[教学]教你如何编译一个应用软件

系统安装、升级讨论
版面规则
我们都知道新人的确很菜,也喜欢抱怨,并且带有浓厚的Windows习惯,但既然在这里询问,我们就应该有责任帮助他们解决问题,而不是直接泼冷水、简单的否定或发表对解决问题没有任何帮助的帖子。乐于分享,以人为本,这正是Ubuntu的精神所在。
回复
头像
xhylyx
帖子: 353
注册时间: 2007-04-09 15:19

[教学]教你如何编译一个应用软件

#1

帖子 xhylyx » 2008-01-10 21:15

当无法获取一个分发包时,开源应用软件通常会有可供编译的源代码

编译是一种将程序代码转换成为可以运行并使用的应用软件的过程

尽管听上去像是个非常复杂的过程,但是它相当简单

首先,访问该应用软件的网页,或者包含在代码文件里的INSTALL或README文件

来看看这个应用软件运行需要什么软件,知道它的需求后,使用Sysnaptic寻找所需要的工具

许多需求是软件类库(应用软件运行所需要的软件),这些类库的典型特征就是它们的包的名字以“lib“开头

作为一个例子,如果你要安装Vorbis音频解码器,在Sysnaptic中寻找Vorbis,libvorbis就是这些包中的一个

你也得安装以-dev结尾的软件包(例如libvorbis-dev)

这些包使得你可以编译软件的那些库文件

编译软件的过程包含3个步骤:(1)配置(2)编译(3)安装

第一部:配置

开启一个终端,转到含有源代码的目录,配置它:

代码: 全选

xhylyx@xhylyx-desktop:~$ ./configure
当运行 ./configure时,它检查你是否已拥有了所需要的包

如果它提示错误,那么很有可能是缺少了需要的工具或类库

找出缺少的是什么并安装它

通常情况下,配置器会告诉你需要安装的东西的

第二步:编译

如果配置脚本状态良好,用下面的命令来进行编译:

代码: 全选

xhylyx@xhylyx-desktop:~$make
如果在编译过程中出现了问题,那么可能是由源代码中的缺陷和错误造成的

最好的方法是和代码的作者联系来寻求帮助

第三步:安装

如果编译成功,运行下面的命令来安装应用:

代码: 全选

xhylyx@xhylyx-desktop:~$sudo make install
现在软件就已经被完整的安装了

小知识:如果想确保已经安装了所有编译你的应用软件所需要的工具,运行下面的命令:

代码: 全选

xhylyx@xhylyx-desktop:~$sudo apt-get build-dep packagename
上次由 xhylyx 在 2008-01-10 22:21,总共编辑 2 次。
头像
HuntXu
帖子: 5776
注册时间: 2007-09-29 3:09

#2

帖子 HuntXu » 2008-01-10 21:33

一般源码包里的readme都有很详细的说明的...
头像
xhylyx
帖子: 353
注册时间: 2007-04-09 15:19

#3

帖子 xhylyx » 2008-01-10 21:54

HuntXu 写了:一般源码包里的readme都有很详细的说明的...
你也说了啊只是一般
头像
hubert_star
论坛版主
帖子: 5373
注册时间: 2007-10-29 22:12
系统: OSX 10.9 + Ub 1304
来自: 江苏南京

#4

帖子 hubert_star » 2008-01-10 21:58

这个帖子很必要

很多人什么都不看,上来就跑

看了这个帖子,能纠正一些习惯

不过还有些软件没有configure,要用autogen.sh来生成的
佛经说,人有八苦: 生、老、病、死、求不得、怨憎、爱别离、五阴盛 故我苦!
圣经说,人有七罪: 饕餮、贪婪、懒惰、淫欲、傲慢、嫉妒和暴怒  故我有罪!

我这篇帖子里面没有任何攻击我们伟大的中华人民共和国政府和任劳任怨的人民公仆(和本论坛高素质的版主)的文字和含义;

特此声明!

有些事,我们明知道是错的,也要去坚持,因为不甘心;有些人,我们明知道是爱的,也要去放弃,因为没结局;有时候,我们明知道没路了,却还在前行,因为习惯了。

欢迎来我的新浪微博@me
头像
BigSnake.NET
帖子: 12522
注册时间: 2006-07-02 11:16
来自: 廣州
联系:

#5

帖子 BigSnake.NET » 2008-01-10 21:59

第一步应该看 README
然后看 INSTALL
^_^ ~~~
要理解递归,首先要理解递归。

地球人都知道,理论上,理论跟实际是没有差别的,但实际上,理论跟实际的差别是相当大滴。
头像
xhylyx
帖子: 353
注册时间: 2007-04-09 15:19

#6

帖子 xhylyx » 2008-01-10 22:09

我只想让没自己动手编译过应用软件的朋友快速入门而已了
而且这里是初学者园地哦
相信还是有朋友是不懂得如何编译应用软件的
而且我上面也说到了可以查看INSTALL或README文件了啊
tongttt
帖子: 444
注册时间: 2007-11-27 22:20

#7

帖子 tongttt » 2008-01-11 10:42

不错,学到了呵呵。
头像
bobobo80
帖子: 841
注册时间: 2007-12-09 22:36
联系:

#8

帖子 bobobo80 » 2008-01-11 12:57

不错,很有用。
wkt
帖子: 849
注册时间: 2006-09-07 22:51
联系:

#9

帖子 wkt » 2008-01-11 13:03

BigSnake.NET 写了:第一步应该看 README
然后看 INSTALL
我的第一步都是./configure 再就是加个 --help
没有 再看readme 和install
dany1969
帖子: 11
注册时间: 2008-01-02 18:30

#10

帖子 dany1969 » 2008-01-11 23:34

不错,对我来说,很有必要。
回复