告诉autoconf(仅)一个库必须静态链接

时间:2013-03-06 10:34:51

标签: autotools

我正在使用automake构建一个c ++程序。它使用了许多我想动态链接的库。

我想要一个静态链接的单个库。我没有构建这个库,我有一个由我想要使用的第三方提供的.a文件。

在configure.ac或Makefile.am中是否有一种简单的方法来指定必须静态链接此库,使所有其他库保持正常的动态链接行为不变?

2 个答案:

答案 0 :(得分:1)

静态或动态链接的决定是用户做出的决定,而不是维护者的决定,因此尝试在autotool元文件中做出决定是没有意义的。 如果用户想要静态链接,最可靠的做法是确保链接器搜索的目录中不存在动态库。

答案 1 :(得分:0)

我找到了答案。

它的工作原理是在Makefile.am中添加库路径:

programname_LDADD = /usr/lib/libneeded.a

仅当路径完全是指定路径时才会起作用。