红联Linux门户
Linux帮助

对于源程序如何在Linux中实现安装

发布时间:2014-08-19 15:12:53来源:linux网站作者:cclo51

我们在使用linux当中,需要一些软件的安装,但是我们又没有rpm包,但是如果有源程序,也能实现软件的安装,下面我们就看看怎么去安装一个源程序。


对于linux中用C语言编写的程序来说 一般我们安装有三个步骤:

1:使用./configure命令 检查编译环境

此步骤主要检测依赖的库文件和工具是否都存在 并根据一定设定结合源程序中的Makefile.in 文件生成一个文件makefile

2:使用make命令 实现编译

make是个项目管理工具  根据makefile文件自动调用各种编译工具实现编译 将源代码编译成二进制文件

3:使用make install 来安装


下面我就以axel的安装为例简要说明下安装过程:

axel是常用的多线程的下载工具,且看安装步骤:

1.#tar -zxf axel-2.4.tar.gz  源程序是个归档的压缩文件,所以…是这样….

2.#cd axel-2.4  解压后生成和源程序同名的目录 切换至此目录

3.#./configure --i18n=0 –strip=0    

./configure有很多选项  比如--i18n=0 表示禁用国际化

--prefix =    指定安装的目录

-- etcdir=     配置文件安装位置

4.#make  编译

5.#make install  安装


源程序的安装结束了,是不是很简单,仍然希望对您有帮助,同时请大虾多多指教。


还有,虽然是安装好了,但是在我们发现仍不能正常运行此程序,因为我们是需要导出相应的文件的。对于此程序的库文件,可执行程序,man文件,头文件的导出,且听我们下回分解。


在上回介绍了怎么使源程序用编译的方式去安装一些软件,但由于是自定义安装的路径,一般情况下,此程序的库文件,man文件,头文件等,系统是找不到的,因此我们也无法直接来使用这些文件或者程序.所有我们需要将它们导出,放到相应的位置,以便于我们以后使用


首先介绍安装的此程序的执行路径的导出:

1, # export PATH=$PATH:/usr/local/axel/bin (/usr/local/axel指安装的路径)

此为用命令的方式来暂时定义此程序,以方便立即使用 ,但这种方法是不能永久生效的

2 写入配置文件

编辑/etc/profile 可在其的export PATH USER…这一行上边加上一行

形如: PATH=$PATH:/usr/local/xxxx/bin 保存退出即可 此方法对全局的用户都永久生效

也可编辑~/.bash_profile 家目录下的.bash_profile这个文件,方法跟上边一样,但是此方法仅对某个用户生效


安装的软件的库文件的导出方法:

我们是以编辑文件的方式来实现的

1:在/etc/ld.so.conf.d/目录下 创建一个以.conf结尾的文件如 axel.conf

编辑此文件,写入安装程序的库文件的路径即可,如/usr/local/axel/lib ,

2 然后执行ldconfig命令 让系统重新装载库文件

man文件的导出方法

亦是编辑文件

编辑/etc/man.config文件,新增一行形如:

MANPATH /usr/local/axel/man

程序头文件导出方法:

这个可通过创建链接的方式来实现

如:# ln –sv /usr/local/axel/include /usr/include/axel

做完上边的工作,我们在调用此程序的某些功能的时候,是不是更方便了。