.deps / * .Po:没有这样的文件或目录编译器错误

时间:2013-09-17 01:23:10

标签: makefile gnu-make autoconf

我的configure.ac看起来像

AC_PREREQ(2.61)
AC_INIT(MyProject, 1.0.0, BUG-REPORT-ADDRESS)
AM_INIT_AUTOMAKE([1.10 no-define foreign])
AC_CONFIG_MACRO_DIR([m4])
AC_CONFIG_SRCDIR(configure.ac)
AC_CONFIG_HEADER([config.h])
AC_CONFIG_FILES([obj/threading/Makefile])
#AC_OUTPUT([Makefile obj/Makefile obj/threading/Makefile])

AC_USE_SYSTEM_EXTENSIONS
AC_LANG([C++])
AC_PROG_CXX([clang++ g++])

AX_CXX_COMPILE_STDCXX_11()
AS_IF([test "x$HAVE_CXX11" != "x1"],
      [AC_MSG_ERROR([** A compiler with C++11 language features is required.])])

CXXFLAGS='-Wall -std=c++11'
AC_SUBST(CXXFLAGS)

AC_OUTPUT

我的Makefile.am看起来像

AUTOMAKE_OPTIONS = subdir-objects

SRCDIR = $(top_srcdir)/src/threading

bin_PROGRAMS = node                 

node_SOURCES  = $(SRCDIR)/UnitTests/node.cpp
node_CPPFLAGS = 
node_LDFLAGS  = 
node_CXXFLAGS = $( CXXFLAGS ) 

我收到以下错误

Makefile:394: ../../src/threading/UnitTests/.deps/node-node.Po: No such file or directory

2 个答案:

答案 0 :(得分:3)

当我升级autoconf版本时,我的autoconf文件出现了类似的问题。我注意到Debian列表上有一个错误报告:Bug #752993似乎与此问题有关。所以,似乎我们遇到了autoconf项目中的一个错误。

我已经跟踪了错误报告中的解决方法,这对我来说效果很好。所以,这意味着我删除了" AUTOMAKE_OPTIONS = subdir-objects"在Makefile.am中。在这之后,我在autoreconf上收到了很多警告,但之后确实有效。所以,你可能想尝试一下。希望它可以帮助你前进(9个月后!)

答案 1 :(得分:1)

通过在项目根目录中调用autoreconf -if

,我遇到了同样的问题
Makefile:577: .deps/testAll-bar_test.Po: No such file or directory
Makefile:579: .deps/testAll-main_testall.Po: No such file or directory
make[3]: *** No rule to make target '.deps/testAll-main_testall.Po'.  Stop.

autoreconf -if
./configure
make # no more problem

我正在为我的C ++项目使用gtest。 Makefile.am文件很简单,没什么不寻常的。