5

インストールしない動的モジュールをビルドするよう Automake に指示する方法は?

pkglib_LTLIBRARIES = mywrapper.la
mywrapper_la_LDFLAGS = -no-undefined -module -avoid-version

mywrapper.so が にインストールされpkglibdirます。

noinst_LTLIBRARIES = mywrapper.la
mywrapper_la_LDFLAGS = -no-undefined -module -avoid-version

代わりに便利な静的ライブラリがビルドされます。

問題の動的モジュールは、テスト スイートを実行するためだけに使用されるため、配布されません。

4

2 に答える 2

4

私も同じ問題を抱えていました。これは私がしたことであり、将来の参考のために自分自身への不快なコメントを含めます。

# The rpath is necessary because stoopid libtool won't build a shared library
# if it's noinst_, because what POSSIBLE reason could you have to do that?
TEST_PLUGIN_LIBTOOL_FLAGS = \
    -module \
    -shared \
    -avoid-version \
    -export-symbols-regex "<whatever symbols you need to export>" \
    -rpath $(abs_builddir)

noinst_LTLIBRARIES = mywrapper.la
mywrapper_la_LDFLAGS = $(TEST_PLUGIN_LIBTOOL_FLAGS)
于 2011-11-26T13:41:50.233 に答える