configure make make clean make install区别联系

1.configure命令python

这一步通常用来生成 Makefile,为下一步的编译作准备,你能够经过在 configure 后加上参数来对安装进行控制,好比代码:./configure –prefix=/usr 意思是将该软件安装在 /usr 下面,执行文件就会安装在 /usr/bin (而不是默认的 /usr/local/bin),资源文件就会安装在 /usr/share(而不是默认的/usr/local/share)。同时一些软件的配置文件你能够经过指定 –sys-config= 参数进行设定。有一些软件还能够加上 –with、–enable、–without、–disable 等等参数对编译加以控制,你能够经过容许 ./configure –help 查看详细的说明帮助shell

2.make工具

make 是用来编译的,它从Makefile中读取指令,而后编译。这一步就是编译,大多数的源代码包都通过这一步进行编译(固然有些perl或python编写的软件须要调用perl或python来进行编译)spa

makefile定义了一系列的规则来指定,哪些文件须要先编译,哪些文件须要后编译,哪些文件须要从新编译,甚至于进行更复杂的功能操做调试

makefile带来的好处就是——“自动化编译”,一旦写好,只须要一个make命令,整个工程彻底自动编译,极大的提升了软件开发的效率。make是一个命令工具,是一个解释makefile中指令的命令工具,通常来讲,大多数的IDE都有这个命令blog

根据Makefile文件编译源代码、链接、生成目标文件、可执行文件。资源

可能遇到的错误:make *** 没有指明目标而且找不到 makefile。问题很明了,没有Makefile,怎么办,原来是要先./configure 一下,再make。开发

3.make cleanget

仅仅是清除以前编译的可执行文件及配置文件(清除上次的make命令所产生的object文件(后缀为“.o”的文件)及可执行文件)it

注意:

在make的时候,会从新生成objects, 也就说新的object覆盖就得objects

make clean 是删除旧的objects。

因此应该是make已经含有了make clean的功能。

可是实际用的时候,好比屡次编译调试运行, 有时候必须make clean一下,直接make,上次留下来的错误彷佛不能清干净。

4.make install

make install是用来安装的,它也从Makefile中读取指令,安装到指定的位置。

将编译成功的可执行文件安装到系统目录中,通常为/usr/local/bin目录。

、扩展说明

  Linux的用户可能知道,在Linux下安装一个应用程序时,通常先运行脚本configure,而后用make来编译源程序,在运行make install,最后运行make clean删除一些临时文件。使用上述三个自动工具,就能够生成configure脚本。运行configure脚本,就能够生成Makefile文件,而后就能够运行make、make install和make clean。

  configure是一个shell脚本,它能够自动设定源程序以符合各类不一样平台上Unix系统的特性,而且根据系统叁数及环境产生合适的Makefile文件或是C的头文件(header file),让源程序能够很方便地在这些不一样的平台上被编译链接。

  这时,就可运行configure脚本了,运行configure脚本,就可产生出符合GNU规范的Makefile文件了: $ ./configure

到此时,就能够运行make进行编译,再运行make install进行安装了,最后运行make clean删除临时文件。

相关文章
相关标签/搜索