当前位置:  开发笔记 > 编程语言 > 正文

如何将几个C/C++库合二为一?

如何解决《如何将几个C/C++库合二为一?》经验,为你挑选了2个好方法。

我厌倦了在我的项目中添加十个链接库,或者要求其中八个使用我自己的链接库.我想使用现有的库,如libpng.a,libz.a,libjpeg.a,并将它们组合成一个.a库.那可能吗?如何组合.lib库?



1> Judge Maygar..:

您可以使用从每个库中提取目标文件

ar x 

然后将它们全部合并到一个新的库中

ar cs  


请注意,如果您的两个库包含具有相同名称的成员,那么unpack-libraries-into-directory-and-repack的简单方法将会失败 - 成员将会丢失.您需要重命名其中一个成员以避免冲突.

2> Avner..:

在类似Unix的系统上,ld和ar实用程序可以做到这一点.查看http://en.wikipedia.org/wiki/Ar_(Unix)或在任何Linux机器上或通过谷歌查找手册页,例如'unix man ar'.

请注意,链接到共享(动态)库可能会更好.这将为您的可执行文件添加依赖项,但会大大减小其大小,尤其是在您编写图形应用程序时.

推荐阅读
Gbom2402851125
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有