首页 > 解决方案 > 如何使用 GNU Autotools 更改 *.o 文件和产品目录?

问题描述

我通过 GNU Autotools 创建了一个非常简单的 hello world C/C++ 项目。这是一个完整的教程,展示了如何在 GNU Autotools 中构建最简单的项目。我想更改项目以将所有 *.o 存储在 build/ 目录中,并将可执行文件存储在 output/ 中。

是否可以在 Autotools 中更改 C/C++ 编译器的输出文件夹?

标签: makefilegnuautotools

解决方案


这不是 autotools 的设计方式。autotools 的设计方式是您将源文件留在原处并更改到另一个目录并在那里运行您的构建,它将在本地写入目标文件。

所以,而不是运行:

cd myproj
./configure
make

并将目标文件与源文件放在同一目录中,您可以执行以下操作:

mkdir obj
cd obj
../myproj/configure
make

然后目标文件位于obj目录中,而不是源目录中。


推荐阅读