Autotool:使用多个配置编译同一个项目

Autotool : Compiling same project using multiple configuration

我是第一次基于 autotools 建立项目,我需要为两个平台(使用两个不同的工具链)构建项目。

目前,当我想为一个工具链构建时,我从头开始,因为我不确定是否完全理解它是如何工作的。 (自动配置、配置、制作)。

但是每次都需要 autoconf / configure 部分吗? 如果我创建两个构建目录,并从每个目录调用配置(每个目录都有不同的标志), 我可以在不执行所有过程的情况下直接调用 make 吗?

谢谢

But is the autoconf / configure part required each time? If I create two build directories, and call configure from each directory (with different flags for each one), can I just then call make without performing all process?

Autoconf 用于构建(跨平台)构建系统。没有理由认为 运行 使用相同的输入(您的 configure.ac 和与您的项目捆绑在一起的任何自定义宏,主要是)使用相同版本的 Autoconf 会产生不同的输出。所以不,你不需要为每个构建单独 运行 autoconf,事实上它是标准的 Autotools 模型,你 而不是 运行 autoconf 每次构建。

所以是的,创建两个构建目录绝对是自然的和预期的用法,并且在每个目录中 运行 configure; make。此外,如果您确实正在创建单独的构建目录而不是在源目录中构建,那么您将能够看到 configure 将其所有输出写入构建目录。因此,在那种情况下,一个构建不能干扰另一个。