gpt4 book ai didi

c - 构建依赖于另一个静态库的静态库

转载 作者:太空狗 更新时间:2023-10-29 15:19:11 46 4
gpt4 key购买 nike

我有一个案例,其中有两个库 lib1 和 lib2。 lib2 依赖于 lib1。在我的例子中,lib2 基本上是 lib1 中函数的高级包装器。最终的应用程序将通过包含相关的头文件来使用 lib2 中的函数。如何静态构建库并将它们链接到最终程序?

最佳答案

静态库只是对象 (.o) 文件的存档,因此您不能嵌入依赖信息。类似 ar cr lib1.a foo.o bar.o [more object files] 的内容将构建您的库。

因为没有依赖信息,您的主程序必须链接两个 库并且链接lib1 之后 很重要lib2lib2 依赖于 lib1 时(否则链接器将找不到 lib2 中未解析的符号)。因此,链接步骤可能如下所示(假设您使用 gcc 并且您的库位于当前目录中):

gcc -otest main.o -L. -Wl,-Bstatic -l2 -l1

关于c - 构建依赖于另一个静态库的静态库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45521710/

46 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com