0

我有一个库说 libX.a 我正在创建另一个库 myLib2.ai 想要将 libX.a 与 myLib2.a 静态链接问题是当我使用 myLib2.a 时它抱怨要求 libX.a 但我想要 libX.a成为 myLib2.a 的一部分,以便我可以直接使用 myLib2.a

我已经尝试生成 myLib2.a 并且成功了,但是当我尝试使用它时出现错误。你能建议这是可能的吗?如果可能的话,我们如何使用makefile来实现这一点。

谢谢并恭祝安康,

罗希特

4

2 回答 2

1

我想链接这两个库以创建一个库。

您不想链接这两个库;你想把它们结合起来。食谱在这里

于 2013-06-12T13:58:06.190 回答
0

Extract the object files from libX.a (using ar -x), then add them to myLib2.a (using ar -r).

In a makefile:

CONTENTS := $(filter %.o,$(shell ar -t libX.a))

libMy2.a: libX.a
    ar -x libX.a
    ar -r $@ $(CONTENTS)
    rm $(CONTENTS)
于 2013-06-12T14:00:18.700 回答