我想使用Autotools创建一个.so文件,以便我可以使用dlsym加载它。我已经阅读了一些类似的主题,但没有一个建议的解决方案适用于我。这是我的内容:
我想将一个简单的hello.cpp编译成.so。
configure.ac
我从这里得到了灵感,但是当我输入以下内容时:
我得到了一个libtest.la文件,但很遗憾没有.so文件。如果有帮助的话,这是我通常将hello.cpp编译成hello.so的方法:
我希望有人能告诉我做错了什么,这样我就可以得到.so文件。
我想将一个简单的hello.cpp编译成.so。
configure.ac
AC_INIT(My Project, 0.1, my@email, myproject)
AC_PREREQ(2.68)
AC_COPYRIGHT(GNU General Public License)
AM_CONFIG_HEADER([config.h])
AC_PROG_CXX
AM_INIT_AUTOMAKE([1.9 foreign])
AC_CONFIG_FILES(Makefile)
AC_ENABLE_SHARED
AC_DISABLE_STATIC
LT_INIT
AC_OUTPUT
Makefile.am
lib_LTLIBRARIES = libtest.la
libtest_la_SOURCES = hello.cpp
libtest_la_LDFLAGS = -version-info 0:0:0
我从这里得到了灵感,但是当我输入以下内容时:
autoreconf -i
./configure
make
我得到了一个libtest.la文件,但很遗憾没有.so文件。如果有帮助的话,这是我通常将hello.cpp编译成hello.so的方法:
g++ -Wall -shared -rdynamic -fPIC hello.cpp -o hello.so
我希望有人能告诉我做错了什么,这样我就可以得到.so文件。
.so
文件而不使用libtool
。 - Galik