Linux下有哪些软件安装方式
① RPM软件包管理(软件名称.rpm)
② YUM软件包管理(使用yum命令install + 软件名称) => 下载 + 安装一体化
③ 源码编译安装(相对来说是最复杂的一种方式)
软件包类型
☆ 二进制软件包(rpm包)
- 二进制包,指的是已经[^编译]好了的软件包,只需要直接安装就可以使用。
- 二进制包,不需要编译,直接下载安装即可
- 二进制包,需要根据自己的计算机CPU以及操作系统去选择合适的
类似Windows中的.exe文件,如qq.exe
软件源码包
什么是源码包?有什么特点?
- 源码包,指的是程序员写的原始的程序代码文件,不能够直接在计算机上运行。
- 源码包,需要进行编译,变成二进制的软件包后,才可安装使用
- 源码包,一般可以在任何的计算机上安装使用
- 源码包,命名方式一般为:
软件包名.tar.gz
软件包名.tar.bz2
软件包名.tar.xz
软件包名.zip
类似于腾讯QQ开发工程师 => QQ的源代码发给你了 .c => 编译 => QQ.exe文件
二进制源码包(.src.rpm)
什么是二进制源码包?有什么特点?
- 二进制源码包,是一个半成品,安装后不能直接使用
- 二进制源码包,需要使用
rpmbuild
工具重建成真正的rpm
包或者重建成源码包才可安装使用 - 二进制源码包,命名方式一般为:
- mysql-community-5.7.25-1.el6.==src.==rpm
- mysql-community-5.7.25-1.el7.src.rpm
常见的二进制软件包
总结二进制包和源码包区别
二进制软件包的安装方式
① 基于RPM进行安装(先下载软件然后本地进行安装)
② 基于YUM进行安装(在线下载然后安装)
RPM软件包安装
获取软件
Linux只是内核,Linux发行版本:GNU/Linux
- RedHat/Centos光盘或官方网站 ftp://ftp.redhat.com
- 推荐网站
- www.rpmfind.net
- rpm.pbone.net
- 相应软件官方网站
- http://www.mysql.com
- http://nginx.org/packages/
如何选择合适的软件
- 选择适合当前系统的版本号
- 找不到适合的,才去尝试别的系统版本号
- el6兼容el5;el5无法安装 el6
- 选择适合当前计算机cpu的架构
- x86_64包,只能安装在64位的系统上
- i386,i586,i686的软件包可以安装在32和64位系统上
- noarch表示这个软件包与硬件构架无关,可以通用
- 32位系统不能安装64位包
建议: 建议不要跨大版本号去安装软件包,尽量使用当前系统版本自带软件包安装
rpm软件包的安装、卸载以及升级
安装:
rpm -ivh 软件包名称
卸载:
rpm -e 软件包名称 [–nodeps强制]
查询:
rpm -q 软件名称
或
rpm -qa |grep 软件名称
升级:
rpm -Uvh 软件包名称
注意:rpm -Uvh不仅可以升级软件,其实它也可以安装软件。
RPM包管理:以上操作都比较简单,但是在实际应用过程中,可能会遇到问题,很多rpm软件包在安装时都会提示软件依赖。那这个问题如何解决呢?
方法一:根据提示一个一个软件包安装,先解决依赖在回来安装软件
方法二:使用yum install 安装rpm软件包
yum install 软件名称.rpm
以上安装方式的最大好处是,如果安装软件时,产生了依赖,不用担心,yum会自动帮助我们解决这些问题的!
源码安装
获取软件的源码包
可以去某个软件的官网获取,官网一般摆放的都是源码包*.tar.gz
源码安装三步走
① 配置./configure(配置软件安装路径,也可以不配置,不配置使用默认路径)
② 编译make(把软件的源代码做成类似rpm的可以直接按照的软件)
③ 安装make install(把刚才编译好的程序进行安装到Linux系统)
使用源码安装安装cmatrix代码雨
这是今天要安装的软件
https://download.csdn.net/download/weixin_44368963/87917140
第一步:对软件进行解压缩
tar -zxf cmatrix-1.2a.tar.gz
tar xf cmatrix-1.2a.tar.gz,因为默认解压都是使用gzip工具
第二步:进入到cmatrix文件夹,然后对软件进行配置
cd cmatrix-1.2a
其中 cmatrix.c是软件的源码,
./configure => 设置软件默认安装的位置等信息,执行这个
好吧,执行出错error: no acceptable cc found in $PATH,
在$PATH中找不到可接受的抄送
欠缺c的编译器,这里给它安装两个
yum install gcc gcc-c++
安装好后重新执行cmatrix的配置
这样cmatrix就配置好了
配置好make后就可以安装了
make
好吧又出错误了
出现以上问题的主要原因在于系统中没有找到ncurses-devel软件包
没有就安装
yum install gcc gcc-c++ ncurses-devel -y
再重新执行配置
make
…nn的又出错了
一堆未定义的引用,这个好理解,大概率是之前配置时因为缺少编译环境所有导致编译失败遗留下来的,把这个包删了重新解压配置一边
然后再重新编译
编译好后就可以安装了
make install
然后测试一下