Как создать разделяемую библиотеку (.so) в скрипте automake?

при наличии некоторого исходного файла test.cpp я хотел бы создать разделяемую библиотеку libtest.so . Я пытаюсь сделать это в рамках файла automake, однако у меня не получается.

Например, под g++ я делаю следующее:

g++ -shared -fPIC test.cpp -o libtest.so

затем я могу создать другой файл, который будет зависеть от разделяемой библиотеки следующим образом:

g++ mytest.cpp libtest.so -o blah

Я читал, что automake поддерживает создание разделяемых библиотек только через libtool. Я пытался заставить мой скрипт automake работать следующим образом, но он никогда не создаст .so. Самое близкое, чего я добился, это создание .la и .o файлов:

в configure.ac:

AC_ENABLE_SHARED
AC_DISABLE_STATIC
AC_PROG_LIBTOOL(libtool)

в Makefile.am

lib_LTLIBRARIES=libtest.la
libtest_la_SOURCES=test.cpp
libtest_la_CFLAGS=-fPIC
libtest_la_CPPFLAGS=-fPIC
libtest_la_CXXFLAGS=-fPIC
libtest_la_LDFLAGS= -shared -fPIC

Может ли кто-нибудь привести мне пример создания .so на основе вышеизложенного?

25
задан skimon 18 January 2012 в 19:49
поделиться