【发布时间】:2012-04-30 10:46:55
【问题描述】:
有没有人见过这样的:
当使用自动工具在项目中运行 make 时,它总是重新构建一切。使用 make -d 运行,表明 make 会查找 foo.lo 文件,并且因为找不到它们,所以总是重新编译 foo.c。
似乎与 builddir != srcdir 有关。 .lo 文件当然在 builddir 中。但显然 make 或 libtool 正在其他地方期待它们:
调试输出如下所示:
先决条件/path/to/srcdir/foo.h' is older than targetfoo.lo'。
/path/to/builddir/.deps/foo.Plo:1 必须重新制作目标 `foo.lo'。
更新 问题似乎是由 AC_PROG_LIBTOOL 引起的。根据文档,它希望将一个名为 top_builddir 的变量设置为构建目录。设置它的标准方法是什么?是否有用于此的 autoconf 宏?
【问题讨论】:
标签: makefile autotools libtool buildroot