【问题标题】:Autotools: how to override the intermediate build product directory?Autotools:如何覆盖中间构建产品目录?
【发布时间】:2020-07-08 06:26:03
【问题描述】:

我注意到许多基于 Autotools 的项目会将二进制文件生成到 /path/to/project/lib/.lib 文件夹中。

这对跨平台项目有副作用,第一个构建的项目会污染其他平台的后续构建。

我知道我可以使用--prefix--exec-prefixconfigure 指定安装/部署 目录,但这些对.lib 位置没有影响。

是否有另一个开关来指定立即构建产品的位置,以便我可以隔离依赖于平台的二进制文件?

【问题讨论】:

    标签: c++ build autotools autoconf


    【解决方案1】:

    为每个平台创建单独的构建树,并分别从每个构建树调用配置脚本。这将确保所有构建工件都按平台分开。

    【讨论】:

    • 好的,比如mkdir -p /path/to/project/build/platformA && cd /path/to/project/build/platformA && ./configure && make .... ?
    • ./configure 不起作用,您需要使用源代码树的绝对或相对路径。
    • 你的意思是mkdir -p /path/to/project/build/platformA && cd /path/to/project/build/platformA && /path/to/project/configure && make ....?
    • 应该可以,是的。这记录在GNU autotools documentation
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-04-18
    • 1970-01-01
    • 2015-09-25
    相关资源
    最近更新 更多