【发布时间】:2016-03-18 08:42:10
【问题描述】:
我有一个使用 autoconf/automake 的 C 源代码库,现在应该使用 C++ 编译器进行编译。
所以我已将所有文件从 .c 重命名为 .cpp 并相应地更改了所有 makefile。但是我收到以下错误(例如):
make[3]: *** No rule to make target 'tmsConfigFiles.c', needed by 'tmsConfigFiles.o'. Stop.
Makefile 主要包括
bin_PROGRAMS = configparser
configparser_SOURCES = tmsConfigFiles.cpp tmsMoreFiles.cpp tmsEvenMoreFiles.cpp
AM_CXXFLAGS = -I .. -DSOME_DEFINE -Wall -Wextra -etc
这适用于源代码的绝大多数部分(其中一些从一开始就是 cpp),但对于某些文件,会出现上面的错误消息。尝试清理和 autoreconf -is 等无济于事。
相同的版本在 Centos 6 上有效,在 Centos 7 上有时会失败,在我的 Arch 盒子上总是失败。
有人在 autotools 中遇到过类似的错误或知道解决方法吗?
【问题讨论】: