libtoolを使用してライブラリをコンパイルしようとしています。問題は、いくつかのディレクトリに同じファイル名のソースファイルがいくつかあることです。そのため、autoreconf中、libtoolizeは私にエラーを投げます。いくつかのディレクトリに同じファイル名のソースがある場合、libtoolを使用してライブラリを作成する方法
は基本的には、次のように私のファイルシステムのレイアウトは次のとおりです。
src/
Makefile.am
file.cpp
dir1/
file.cpp
...
dir2/
file.cpp
...
Makefile.am
のsrc /ディレクトリに配置され、SUBDIRS = src
を使用して、メインMakefile.amによって呼び出されます。内容は、次のような:
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を各ディクテーションに追加する必要があると推測します。それを正確に行うにはどうすればいいですか? Googleはその解決策を見つけるのには役に立たなかった。