我偶然发现了make文件“Makefile.am”,我尝试在其上使用“make -f Makefile.am”无济于事。我做错了什么?
答案 0 :(得分:7)
这是一个automake脚本/ makefile。您可以通过被叫autobook了解有关automake,autoconf,libtool等的所有信息。
基本上,步骤是运行automake,然后是autoconf,然后配置,然后make来构建你拥有的软件。这些步骤是构建配置脚本所必需的,它可以在您的系统上自动搜索所需的库等。
除非您的软件还包含已生成的“配置”文件,否则此过程并不容易。如果是这样,您(大多数情况下)唯一需要做的就是运行./configure
,然后make
,然后make install
将软件安装到默认位置。如果您想更改配置选项,还可以查看./configure --help
。
答案 1 :(得分:2)
您偶然发现了一个automake文件,该文件用于从源创建Makefile,在本例中为Makefile.am。
从http://developer.gnome.org/doc/GGAD/z70.html开始,他们将其解释为:
automake处理Makefile.am以生成符合标准的Makefile.in。 automake为您做了很多工作:例如,它可以跟上源文件之间的依赖关系。它创建所有标准目标,例如安装和清理。它还会创建更复杂的目标:如果Makefile.am正确,只需键入make dist即可创建标准的.tar.gz文件。
基本上,你应该运行'automake'来制作Makefile,你可能会遇到与'autoconf'配置脚本相同的情况。
Automake:http://www.gnu.org/software/automake/ 有关automake的维基百科文章:http://en.wikipedia.org/wiki/Automake
答案 2 :(得分:2)
如果您尝试从源代码编译第三方应用程序,通常会在源代码树的顶部放置一个“configure”脚本。如果您从该位置运行./configure --help
,您将获得可以设置的选项列表。通常,--prefix
是最常用的。
运行脚本后,您将获得从automake文件生成的标准Makefile。从那里,您可以正常执行make
。
Linux软件包的标准构建步骤是:
./configure
make
make install
答案 3 :(得分:0)
请参阅“man automake”或google for autotools。可能你想先运行像autogen.sh这样的东西。