
Linux 软件包分类
发布日期:2021-05-07 15:14:50
浏览次数:18
分类:原创文章
本文共 1477 字,大约阅读时间需要 4 分钟。
目录
软件包分类
软件包分类
- 源码包
- 二进制包(脚本安装包)
源码包
- 源码包什么样
[root@localhost ~]# vim hello.c#include <stdio.h>int main (void){ printf ("hello world\n");}
[root@localhost ~]# gcc -c hello.c#-c 生成“.o”头文件。这里会生成 hello.o 头文件,但是不会生成执行文件[root@localhost ~]# gcc -o hello hello.o#-o 生成执行文件,并制定执行文件名。这里生成的 hello 就是可执行文件[root@localhost ~]# ./hello hello world#执行 hello 文件
源码包特点
- 源码包的优点:
- 开源,如果有足够的能力,可以修改源代码
- 可以自由选择所需的功能
- 软件是编译安装,所以更加适合自己的系统,更加稳定也效率更高
- 卸载方便
- 源码包有缺点
- 安装过程步骤较多,尤其安装较大的软件集合时(如 LAMP 环境搭建),容易出现拼写错误
- 编译过程时间较长,安装比二进制安装时间长
- 因为是编译安装,安装过程中一旦报错新手很难解决
二进制包
二进制包分类
- DPKG 包:是由 Debian Linux 所开发出来的包管理机制,通过 DPKG 包,Debian Linux就可以进行软件包管理。主要应用在 Debian 和 unbuntu 中。
- RPM 包:是由 Red Hat 公司所开发的包管理系统。功能强大,安装、升级、查询和卸载都非常简单和方便。目前很多 Linux 都在使用这种包管理方式,包括 Fedora、CentOS、
- SuSE 等。我们学习的是 CentOS 6.3,所以我们将要学习 RPM 包管理系统
特点
- RPM 包的优点:
- 包管理系统简单,只通过几个命令就可以实现包的安装、升级、查询和卸载安装速度比源码包安装快的多
- RPM 包的缺点:
- 经过编译,不再可以看到源代码
- 功能选择不如源码包灵活
- 依赖性。有时我们会发现需要安装软件包 a 时需要先安装 b 和 c,而安装 b 时需要安装d 和 e。这是需要先安装 d 和 e,再安装 b 和 c,最后才能安装 a 包。
- 比如说,我买了个漂亮的灯具,打算安装到我们家客厅,可是在安装灯具之前我们家客厅总要有顶棚吧,顶棚总要是做好了防水和刷好油漆了吧,这个装修和安装软件其实类似总要有一定的顺序的。可是有时依赖性会非常繁琐
RPM包依赖
- 1)树形依赖 a---->b---->c
- 2)环形依赖 a---->b---->c---->a
- 3)函数库依赖
- 什么是模块依赖?举一个例子,尝试安装以下文件:
[root@localhost Packages]# rpm -ivh mysql-connector-odbc-5.2.5-7.el7.x86_64.rpm错误:依赖检测失败:libodbc.so.2()(64bit) 被 mysql-connector-odbc-5.2.5-7.el7.x86_64 需要libodbcinst.so.2()(64bit) 被 mysql-connector-odbc-5.2.5-7.el7.x86_64 需要
- 发现报错,需要安装“libodbc.so.2”函数库文件,这时会发现在光盘中根本找不到这个文件。
- 那是因为函数库没有单独成包,是包含在某一个软件包中的。
- 如果要知道在哪个软件包中,需要查询网站,如图:
【注】:参考尚硅谷沈超老师教程
发表评论
最新留言
能坚持,总会有不一样的收获!
[***.219.124.196]2025年04月08日 02时13分22秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
Pycharm 常用快捷键
2021-05-08
基于Altium Designer的电子设计的入门指南
2021-05-08
基于LabVIEW的入门指南
2021-05-08
PCB布局系列汇总
2021-05-08
电阻入门知识
2021-05-08
电容入门知识
2021-05-08
1073 模拟万年历
2021-05-08
C++面向对象
2021-05-08
正则表达式教程
2021-05-08
C语言教程(三)
2021-05-08
专题(七)贪心——AcWing 112. 雷达设备
2021-05-08
深入理解JVM(一)JVM概述、类的声明周期、JVM整体架构、JMM、volatile
2021-05-08
求两个数的最大公因数 求两个数的最小公倍数
2021-05-08
【Java】寻找数组中“主要元素”
2021-05-08
达梦数据库主备部署
2021-05-08
7步教你使用Keil使用注释模板,好好注释,从我做起!
2021-05-08
电子眼(树形DP)
2021-05-08
P1455 搭配购买(并查集+dp)
2021-05-08