在一个基于autotools的项目中,我正在捆绑另一个小型静态库,并以安全的方式将其链接到我的最终共享库中(静态库已使用-fPIC等参数构建)。最终,在构建过程中不应该有任何关于内部静态库存在的证据,并且它的所有符号都应该被"复制"到共享库中。
最后一个条件肯定满足,可以使用
有没有办法告诉libtool在包含在
最后一个条件肯定满足,可以使用
nm
进行检查,并且在共享库上使用 ldd
时,在静态库上没有需要"needed" ELF段依赖。但是libtool的 .la
归档文件是一个不同的故事:其中的 dependency_libs
变量会捕捉到一个-lmy-secret-temp-lib
(为了保护无辜者更改了名称)条目,这将破坏任何试图针对最终库构建的基于libtool的项目,因为该依赖关系永远无法得到满足。当然,非libtool项目很好,因为除了libtool之外,没有什么东西会查看 .la
文件。有没有办法告诉libtool在包含在
xxxx_la_LIBADD
变量中时不要将库添加到 dependency_libs
变量中的 .la
文件中?也许有一些类似于-flibtool_ignore -lmy-secret-lib -flibtool_payattention
的前后参数,允许开发人员告诉libtool停止阻碍?能够告诉autotools / libtool不制作/安装 .la
文件将是很好的,但这似乎不是一个选项!