您如何将所有链接依赖项都包装到一个Linux静态库中

How do you package all link dependencies into a single Linux static library?

本文关键字:一个 Linux 静态 包装 链接 依赖      更新时间:2023-10-16

我正在发布一个多平台库,除了Linux以外,它都在工作。可能有一种方法可以做我需要的事情,但我没有看到它,希望这里有人可以帮助您。

我的库由两个项目组成," sublibrary.lib"answers" library.lib"(例如(。我构建" sublibrary",然后将其链接到"库"中以进行分发。消费者只需要与"库"链接以获取所有内容,包括" sublibrary"中的内容。

其他每个平台都相同 - 我发布了一个包含所有内容的巨型" library.a",消费者与之链接,不必知道任何低级依赖关系。

在Linux上构建标准可执行文件时,我的链接命令不仅必须指定"库"。这是因为中间库将符号尚未解决直到以后。

我想做的是使其与其他平台相同,因此消耗可执行文件仅必须与" library.a"链接,并且该库包含所需的一切。

我知道这将使图书馆更大,但这是确保依赖解决方案并为每个人创造时间的唯一方法。

unix上的库只是所有对象文件的集合。您可以使用AR添加更多文件,但是您确实需要小心文件名冲突。

相关文章: