将静态库链接到其他静态库

将静态库链接到其他静态库

我有一小段代码依赖于许多静态库(a_1-a_n)。我想将该代码打包到静态库中,并将其提供给其他人。

我的静态库,让我们称之为X,编译好。

我创建了一个使用X函数的简单示例程序,但是当我尝试将它链接到X时,我从库a_1 - a_n中得到许多关于丢失符号的错误。

有没有办法可以创建一个新的静态库,Y包含X和X所需的所有功能(a_1 - a_n中的选定位),这样我就可以为人们分配Y来链接他们的程序了吗?



慕尼黑8549860
浏览 2655回答 3
3回答

慕的地10843

在Linux或MingW上,使用GNU工具链:ar&nbsp;-M&nbsp;<<EOM &nbsp;&nbsp;&nbsp;&nbsp;CREATE&nbsp;libab.a &nbsp;&nbsp;&nbsp;&nbsp;ADDLIB&nbsp;liba.a &nbsp;&nbsp;&nbsp;&nbsp;ADDLIB&nbsp;libb.a &nbsp;&nbsp;&nbsp;&nbsp;SAVE &nbsp;&nbsp;&nbsp;&nbsp;END EOM ranlib&nbsp;libab.a如果你不删除liba.a和libb.a,你可以做一个“瘦档案”:ar&nbsp;crsT&nbsp;libab.a&nbsp;liba.a&nbsp;libb.a在Windows上,使用MSVC工具链:lib.exe&nbsp;/OUT:libab.lib&nbsp;liba.lib&nbsp;libb.lib
打开App,查看更多内容
随时随地看视频慕课网APP