我正在编写一个静态库,需要处理XML。我希望它可以直接包含所有必要的内容,但我不知道如何使其他静态库链接到它,尤其是libxml2。
我将
我将
-c
标志传递给gcc以生成.o
文件,然后使用ar
创建库。我需要传递什么神秘的标志组合来让我的静态库包含libxml2?-c
标志传递给gcc以生成.o
文件,然后使用ar
创建库。我需要传递什么神秘的标志组合来让我的静态库包含libxml2?库不会自动集成其他库。我能想到两种解决方案来实现你想要的目标。
.o
,然后将它们与您的 .o
一起包含在一起,生成一个单独的 .a
。ar t libxml2.a
查看 libxml2.a
的内容。xml2a.o
和 xml2b.o
mine.o
结合起来制作 mine.a
您需要首先执行 ar x libxml2.a
,以获取 xml2a.o
和 xml2b.o
ar cr mine.a mine.o xml2a.o xml2b.o
这里有一个 简单解释 最常用的 ar
命令,尽管我可能已经总结了您能够从中获得的信息。.o
的过程中了? - Jonathan Mee手动将对象合并到新的静态库实例中:
ar -x libx.a
ar -x liby.a
ar -c libz.a *.o