我经常需要为许多不同的体系结构构建常见的链接库,如zlib,libpng,jpeglib,freetype等。我更喜欢做树外构建,如下所示:
mkdir build_linux_x64
cd build_linux_x64
../configure
make
这通常可以正常工作但现在我已经读过,只有在满足以下条件时才能使用:“必须为树外构建启用项目,通常使用VPATH的用户(如果使用make)”({ {3}})
这引出了一个问题:如何判断是否为树外构建启用了项目?如果没有为树外构建启用项目,或者我应该如何判断,configure
或make
会失败吗?
答案 0 :(得分:2)
如果树外构建有效,那么你知道它有效:)。当他们说“启用”时,他们并不意味着项目必须打开一些开关或配置选项。它们意味着程序包的作者需要编写他们的Makefile.am
(或Makefile.in
如果他们不使用automake)文件在树外运行时正常工作。除非通过尝试,否则无法知道这些文件是否正确写入。
如果您尝试了它并且它不起作用,您应该提交包的错误。
请注意,使用autotools创建源代码分发包的标准方法强制使用树外构建,因此如果他们使用标准方法创建源代码分发,那么它肯定会正确地构建树外