Linux编译安装中configure、make和make install各自的作用

./configure是用来检测你的安装平台的目标特征的。比如它会检测你是不是有CC或GCC,并不是需要CC或GCC,它是个shell脚本。
make是用来编译的,它从Makefile中读取指令,然后编译。
make install是用来安装的,它也从Makefile中读取指令,安装到指定的位置。
AUTOMAKE和AUTOCONF是非常有用的用来发布C程序的东西。

1、configure
一般用来生成 Makefile,为下一步的编译做准备。

你可以通过在 configure 后加上参数来对安装进行控制,比如代码:

./configure --prefix=/usr
意思是将该软件安装在 /usr 下面,执行文件就会安装在 /usr/bin (而不是默认的 /usr/local/bin),资源文件就会安装在 /usr/share(而不是默认的/usr/local/share)。
同时一些软件的配置文件你可以通过指定 --sys-config= 参数进行设定。有一些软件还可以加上 --with、--enable、--without、--disable 等等参数对编译加以控制,你可以通过允许 ./configure --help 察看详细的说明帮助。

2、make
make 的作用是开始进行源代码编译,

以及一些功能的提供,这些功能由他的 Makefile 设置文件提供相关的功能,比如 make install 一般表示进行安装,make uninstall 是卸载,不加参数就是默认的进行源代码编译。

如果 在 make 过程中出现 error ,你就要记下错误代码(注意不仅仅是最后一行)。

make 是 Linux 开发套件里面自动化编译的一个控制程序,他通过借助 Makefile 里面编写的编译规范进行自动化的调用 gcc 、ld 以及运行某些需要的程序进行编译的程序。

一般情况下,他所使用的 Makefile ,由 configure 这个设置脚本根据给定的参数和系统环境生成。


3、make install
安装(当然有些软件需要先运行 make check 或 make test来进行一些测试),这一步一般需要你有 root 权限(sudo make install)

最新文章

  1. Spring面向切面之AOP深入探讨
  2. [译] 二、开始iOS编程之前,你还需要做什么?
  3. vim编辑器的基本使用
  4. 【MySQL】MySQL/MariaDB的优化器对in子查询的处理
  5. NSMutableArray 初始化与添加删除程序
  6. DOMContentLoaded vs onload
  7. JS多选日期
  8. Your Job Is Not to Write Code
  9. Qt学习 之 文件
  10. Qt数据类型转换
  11. $each $position $sort $slice
  12. redux简明学习
  13. mybatis insertUseGeneratedKeys 返回主键为null
  14. java位移运算符 转
  15. HDU4609 3-idiots(生成函数)
  16. Composer 安装和使用
  17. 《JavaScript 高级程序设计》第二章:在HTML中使用JavaScript
  18. 【转载】 OpenCV ——双线性插值(Bilinear interpolation)
  19. 再学Java 之 形参个数可变函数
  20. [LuoguP1462]通往奥格瑞玛的道路($SPFA+$二分)

热门文章

  1. Cocos Creator - 入门教程项目 - 博客频道 - CSDN.NET
  2. taro初识一
  3. The Designer (笛卡尔定理+韦达定理 || 圆的反演)
  4. Chart控件的用法
  5. javascript DOM 常用方法
  6. JavaScript 原型链学习(三)原型对象存在的问题 与 组合使用构造函数和原型
  7. python SyntaxError: Non-ASCII character '\xe6' in file
  8. 创建多线程的第一种方式——创建Thread子类和重写run方法
  9. 删除本地git的远程分支和远程删除git服务器的分支
  10. vue scoped 深度作用选择器