打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
Makefile.am和makefile.in生成Makefile


很多时候,我们在网上下载的linux开源软件都会遇到一个问题,就是源码里面没有直接的makefile,但是它有Makefile.ammakefile.in或者它有Makefile.amconfigure.in,这里就不详细解释他们直接的关联,直接给出如何操作生成makefile

具体操作步骤如下:

1. 执行aclocal,产生aclocal.m4文件

aclocal是一个perl 脚本程序,它的定义是:

    aclocal -create aclocal.m4 by scanning configure.ac
  • 1

aclocal根据configure.in文件的内容,自动生成aclocal.m4文件。而aclocal.m4文件中,包含了生成configure文件所必须的宏。

2. 执行autoconf,生成configure文件

autoconf会根据configure.inaclocal.m4文件,生成configure文件。

3. 执行automake命令,产生Makefile.in

    automake --add-missing
  • 1

automake会根据Makefile.am文件产生一些文件,包含最重要的Makefile.in。前面所生成的configure,会根据Makefile.in文件,来生成最终的Makefile文件。

4. 执行configure命令,生成Makefile文件

这样,就产生了编译所需要的Makefile文件。运行make,即可编译。

    ./configure
  • 1

如果我们有了Makefile.ammakefile.in那就可以执行第四步了。

这里在进行第四步的时候很可能会遇到一个问题:

error: C++ preprocessor "/lib/cpp" fails sanity checkSee `config.log' for more details.
  • 1
  • 2

出现该情况是由于c++编译器的相关package没有安装。 
以Ubuntu为例,解决如下:

#sudo apt-get install build-essential
  • 1

以RED HAT为例:

# yum install glibc-headers# yum install gcc-c++
  • 1
  • 2

这样子有了makefile之后我们就可以愉快的make了!!

 

 

 

下载bsd0.06源码找不到makefile


本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
Configure,Makefile.am, Makefile.in, Makefile文件之间关系
[转载]使用Automake,Autoconf生成Makefile
autoconf、automake工具组使用简单介绍
Linux中的configure,make,make install到底在做些什么
详解linux下auto工具制作Makefile源码包
autotools使用总结
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服