linux中软件的安装

社区服务
高级搜索
猴岛论坛CSGO反恐精英CS个性化修改专区linux中软件的安装
发帖 回复
倒序阅读 最近浏览的帖子最近浏览的版块
4个回复

linux中软件的安装

楼层直达
magayblol

ZxID:27341815

等级: 列兵
举报 只看楼主 使用道具 楼主   发表于: 2014-08-22 0

源代码为文本文件,需要经过编译器编译之后,变成可执行的文件,在编译过程中,由于源代码比较大, 有时需要分成几个部分来进行编译成目标文件,之后将各个部分的编译成一个可执行文件,gcc编译器为Linux标准的编译器。
编译步骤:1.gcc  –c  hello.c 自动产生hello.o的文件,但不会产生二进制执行文件。
          2.gcc  -o  hello  hello.c  参数后面跟为生成的二进制的执行文件的名字。
加入函数进行编译 3. gcc  sin.c –lm  -L /lib  -I/usr/include –lm指的是libm.so或libm.a
-L 后面接的路径是函数库的搜索目录,-I 后面接的是源码内包含文件的所在目录。
函数库有两种分别为动态函数库以及静态函数库,动态函数库的后缀即为.so文件,.a则表示静态函数库。当利用动态函数库进行编译的时候,没办法将全部函数都编译进去,只是给了一个指针型的指向,如果函数库升级了,不需要重新编译生成可执行文件,而静态函数库则需要重新编译。
Linux中的函数库默认放在/lib以及/usr/lib文件夹中,因此当编译的时候若没有放在这两个函数库中,则默认连接到这两个文件夹中。

Tarball安装的基本步骤:
1.       将tarball文件在/usr/local/src目录下解压缩;tar –zxvf 具体tarball
2.       查看安装文档
3.       运行.configure命令检查系统环境,建立makefile文件。
4.       Make编译成可执行二进制文件,Make install安装程序。

使用patch更新源代码,首先利用diff –Naur 旧文件 新文件 >oncomparion 比较出新旧文件的不同,生成一个需要补丁的新旧对比文件。然后在到旧的文件目录下去执行patch –p 0 <oncomparion ,就可以将旧的文件替换成新文件。
为了提高库的访问速度,则可以将库文件调入到内存当中。首先将库的目录写入在/etc/ld.so.conf中写入动态链接库的目录,利用ldconfig命令来调用动态库中。Ldd命令可以查看所用到的执行文件所用到的函数库。
通常建议将安装的套件放在/usr/local上,源码放在/usr/local/src上,默认情况下,man会去搜索/usr/local/man里面的帮助文件。/etc/man.config文件记录man page的搜索路径,当安装的套件独立在一个文件夹中,这么man page没有放在特定的目录下,就没办法查询到,因此需要将路径记录在man.config中。
由于RPM有数据库来记录套件相关的信息,所以RPM类型的套件所拥有的文件都放在系统默认设置的目录下。RPM安装的是直接编译好的可执行文件,因此系统环境应该是一样的,RPM存在的最大问题是无法自动满足套件的依赖属性的需求,可以利用yum、apt、urpmi服务来解决属性的相关问题,RPM的数据库放在/var/lib/rpm的文件目录下。
RPM:-ivh 具体的rpm包,可以查看具体安装包的过程。
      -Uvh RPM包的升级。
      -qR 查看套件的依赖关系。
RPM卸载要自上而下,rpm –e 具体套件名称  解安装这个套件。
Man查询的结果是在程序外,help查询的结果是在程序里,这个是内嵌到程序里的参数。
RPM类型的文件放在系统默认设置的文件夹下(如下)

目录
说明

/etc
一些配置文件

/usr/bin
一些可执行文件

/usr/lib
一些程序使用的动态函数库

/usr/share/doc
基本的软件使用手册与帮助文件

/usr/share/man
一些man page文件

SRPM
Source RPM该类型的文件与RPM的区别在于安装包里携带的是源代码,而RPM则是可执行的二进制文件,因此SRPM需要进行重新的编译成二进制文件。SRPM与tarball的区别是:SRPM包含依赖的关系,而tarball则不含有。
SRPM的目录

目录
说明

/usr/src/redhat/spec
存放将SRPM编译为RPM的配置文件

/usr/src/redhat/build
存放编译过程中的东西

/usr/src/redhat/source
存放原始文件

/usr/src/redhat/RPMS
存放编译后的RPMS包
船肚载丞相

ZxID:18065182

等级: 列兵
举报 只看该作者 沙发   发表于: 2014-08-22 0
太给力了谢谢楼主分享
姜韩零零七

ZxID:17891237

等级: 上等兵
举报 只看该作者 板凳   发表于: 2014-08-23 0
我也不说什么话了,先顶个吧!无语!!!!!
}
珠海李辉

ZxID:17967977

等级: 上等兵
举报 只看该作者 地板   发表于: 2014-08-23 0
受益匪浅啊,很有用的
~
心烦12

ZxID:52921743

等级: 新兵
举报 只看该作者 4楼  发表于: 2014-08-23 0
没用过这种系统,单还是顶帖
« 返回列表
发帖 回复