我正在使用自动工具来构建共享对象。
pkglib_LTLIBRARIES
在我的 Makefile.am 中使用会导致构建libtest.la
AND 。libtest.so
我只希望它构建/安装libtest.so
。
这可能吗?
我正在使用自动工具来构建共享对象。
pkglib_LTLIBRARIES
在我的 Makefile.am 中使用会导致构建libtest.la
AND 。libtest.so
我只希望它构建/安装libtest.so
。
这可能吗?
生成库的细节因平台而异。例如,在 OS X 上,您的库将被称为 libtest.dylib 而不是 libtest.so。libtool 是 autotools 套件的一部分,它的工作是抽象出所有与平台相关的杂乱细节。为此,它创建了库的高级、独立于平台的描述。这是您看到的 libtest.la 文件。libtools 使用这个独立于平台的库描述来组合最终的本地库。
如果您使用的是自动工具,我认为您将无法避免生成 libtest.la。我想您可以破解您的本地 libtool shell 脚本以在完成时将其删除,但您只需要在下次运行 make 时再次生成它。
我发现libtool 上的 GNU 文档有些不透明。这是一个不太透明但有点过时的描述。
您可以--disable-static
作为选项传递给configure
.