切换到动态链接

问题描述:

我正在用autoconf和automake构建一些软件包,并希望确保库是动态链接的(即没有静态链接)。切换到动态链接

如何设置自动工具强制动态库链接?

像这样的事情出现在脑海:

# Makefile.am 
lib_LTLIBRARIES = libpart.la 
libpart_la_SOURCES = lgpl_chunk.c 

bin_PROGRAMS = prop 
prop_SOURCES = prop.c 
prop_LDADD = libpart.la 

,并确保您始终构建一个共享库。最好通过默认禁用静态构建,

 
#configure.ac 
AC_DISABLE_STATIC 
if test "$enable_static" != "no"; then 
    echo "Sorry Dave, I can't let you do that"; 
    exit 1; 
fi; 

您不一定必须依靠autotools。您可以使用dlopen或其他一些工具来加载动态库。