我正在尝试使用 libtool 编译一个库。问题是我在几个目录中有几个具有相同文件名的源文件。因此,在 autoreconf 期间,libtoolize 会向我抛出错误。
基本上,我的文件系统布局如下:
src/
Makefile.am
file.cpp
dir1/
file.cpp
...
dir2/
file.cpp
...
Makefile.am
放置在 src/ 目录中,并由主 Makefile.am使用SUBDIRS = src
. 内容类似于以下内容:
libfoo_la_SOURCES = \
file.cpp \
dir1/file.cpp \
dir2/file.cpp \
...
但是,在执行 autoreconf 时,出现错误:
src/Makefile.am: object `file.lo' created by `dir1/file.cpp' and `file.cpp'
如何解决?我认为我必须将 Makefile.am 添加到每个子目录中。如何做到这一点?谷歌没有帮助找到解决方案。