没有合适的资源?快使用搜索试试~ 我知道了~
make名与configure命令的作用.pdf
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 105 浏览量
2022-07-11
16:33:09
上传
评论
收藏 249KB PDF 举报
温馨提示
试读
1页
make名与configure命令的作用.pdf 学习资料 复习资料 教学资源
资源推荐
资源详情
资源评论
make名与congure命令的作用
(文字来源:
zhidao.baidu /question/1542737552499356387
)
摘 要:大多数的源代码包都经过这一步进行编译(当然有些 perl 或 Python 编写的软件需
要调用 perl 或 python 来进行编译)。
关键词:make;makefile;configure
事实上,使用类似 gcc 的编译器来进行编译的过程并不简单,因为一套软件并不会仅有一个程序,而
是有一堆程序代码文件。所以除了每个主程序与副程序均需要写上编译过程的命令外,还需要写上最终的
链接程序。如果程序代码小还好,但是类似 WWW 服务器软件(例如 Apache),或者是类似核心的源
码,动动辄数百 MBytes 的数据量,编译命令会写到疯掉。这个时候,我们就可以使用 make 这个命令
的相关功能来进行编译过程的命令简化了。
当运行 make 时,make 会在当前的目录下搜寻 Makele(or makele)这个文件,而
Makele 里面记录了源码如何编译的详细信息。make 会自动地判别源码是否已经改变,而自动升级执行
文件,所以,make是软件工程师相当好用的一个辅助工具。
make 是一个程序,会去找 Makele ,那么 Makele 怎么撰写呢? 通常软件开发商都会写一个检
测程序来检测使用者的操作环境, 以及该操作环境是否有软件开发商所需要的其他功能,该检测程序检测
完毕后,就会主动地创建这个 Makele 的规则文件。通常这个检测程序的文件名为 congure 或者是
cong 。
那么为什么要检测操作环境呢?因为不同版本的核心所使用的系统调用可能不相同,而且每个软件所
需要的相关的函数库也不相同;同时,软件开发商不会仅针对 Linux 开发,而是会针对整个 Unix-Like
做开发。 所以他也必须要检测该操作系统平台有没有提供合适的编译器才行。一般来说,检测程序会检测
的数据大约有下面这些:
是否有适合的编译器可以编译本软件的程序代码;
是否已经存在本软件所需要的函数库,或其他需要的相关软件;
操作系统平台是否适合本软件,包括 Linux 的核心版本;
内核的头定义文件 (header include) 是否存在(驱动程序必须要的检测)。
由于不同的 Linux distribution 的函数库文件的路径,或者是函数库的文件名定义, 或者是默认安
装的编译器,以及内核的版本都不相同,因此理论上,你无法在 CentOS 5.x 上面编译出 二进制程序 后
还将他拿到 SuSE 上面运行,这个动作通常是不可能成功的。因为调用的目标函数库位置可能不同,内核
版本更不可能相同。所以能够运行的情况是微乎其微。同一套软件要在不同的平台上面运行时, 必须要重
复编译。
1 / 1
make 名与 configure 命令的作用
资源评论
努力搬砖的小王
- 粉丝: 16
- 资源: 7706
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功