Ubuntu编译安装软件就那么简单

编译软件

1、仓库中的软件包不可用;

2、仓库中的软件包太旧了;

3、仓库中的软件包,因某些原因导致程序的个别功能不可用;

4、仓库中的软件包可能有些bug被所有者修复了;

5、你想通过测试来帮助作者修复某些bug;

6、或者只是你想从头开始,试试手动编译一个程序;

环境

你需要根据写成相关程序的语言,来编译软件。被要求编译的应用程序通常是由C和C++写成的,在这种情况下,你需要安装编译器gcc,可以通过安装build-essential软件包来获取。通常情况下,你需要下面的命令操作来实现:

sudo apt-get install build-essential

为了能够运行configure和autogen.sh文件,需要更多的程序:

sudo apt-get install automakesudo apt-get install checkinstall

如果程序是由java写成的,那么你还需要一个java run-time和compiler。你可以根据java页的说明来安装java。有时候需要一个基于构建工具ant的java,软件包可以从ubuntu仓库获得:

sudo apt-get install gcj

如果程序是由解释语言写成的,比如python和perl,那么你仅仅需要一个解析器,这个是ubuntu默认安装的,你可以直接运行程序,绝大多数情况下,你可以直接从ubuntu仓库中安装那些为了运行程序而必须的python和perl程序。更多解释语言的情报请参考文章结尾!

你真的需要编译吗?

PPAkeyword(当然了,请使用实际术语代替keyword)!

apt-cache search <keyword>获取源

通常,源码包会以作者自己网站的某种形式来提供!通常的格式是tar.gz和tar.gz2或者zip。你可以使用文件解压缩工具,通过下面的命令来解压他们:

tar -xvf file.tar.gz tar -xvf file.tar.bz2 unzip file.zipcvs -d :pserver:anonymous@anoncvs.gnome.org:/cvs/gnome logincvs -d :pserver:anonymous@anoncvs.gnome.org:/cvs/gnome co NetworkManager

如果你是从CVS安装,请参阅文章最后的介绍。

很多软件包,可以使用Bazaar(sudo apt-get install bzr)从upstream获取当前的代码,而无需手动查找版本控制位置。例如:

bzr get lp:network-manager三步编译

绝大多数linux上需要源码安装的程序可以通过./configure;make;make install这三步来实现安装,而最困难的一步往往都在./configure这一步,那后面的几步是可以很轻松的完成的。

Configure

configure是用来做下面这些事的一个脚本:1、用以检查计算机建立包所必须的完整性;

2、帮助你根据需要改变默认的路径;

3、用以激活/禁用编译程序中的各种选项;

4、用以改变程序将要被安装的路径;你可以通过执行下面的命令来查看特定configure脚本所提供的选项个功能:

./configure –help | less

例如,默认的configure脚本会指定安装到/usr/local下面,如果你想改变路径,可以执行下面显示的configure脚本命令:

./configure –PREFIX=/opt

如果你真的想从零开始编译,可以认真研读一下README或者INSTALL文件。你会看到需要什么样的软件碎片,比起在包系统中,在这些文件中他们通常有着不一样的名字。接下来,可以通过使用apt-cache工具来寻找相应的包。如果你已经通过仓库中编译包,那么还有一个诀窍,就是通过下面的命令来安装包的依赖:

sudo apt-get build-dep <package>

这可以确保所有所需的包以来都可以被安装,以期configure不会由于过旧的依赖包而报错,否则你将不得不继续编译相关的依赖。

寻找并修复configure的故障

恰巧在下面这几种情况下,configure可能会失败:1、编译的时候需要-dev包;

2、要编译GNOME应用那么需要相应的gnome-level;而编译KDE应用则需要kde-level;

可以一个人,可以几个人,一起放松那劳累的心情或者劳累自己的身体,

Ubuntu编译安装软件就那么简单

相关文章:

你感兴趣的文章:

标签云: