2

我正在试验我自己的 BSD 或 Linux 发行版。我想以对最终用户有意义的方式组织系统文件。我希望他们能够访问系统,而不会出现 *nixes 留下的所有文件混乱。

有没有办法将多个动态库合并到一个文件中而不会丢失动态链接?我将有权访问所有源文件。

4

1 回答 1

3

它可能与系统相关,但至少对于 ELF(Linux 使用的可执行格式)来说,这是不可能的。使用 ELF,共享库有点像可执行文件:它们是链接过程的最终产品,并非旨在分解或重新链接到不同的排列中。

如果您拥有进入一堆共享库的所有组件的源代码,我想您可以将它们全部链接到一个巨大的共享库中,但您可以使用目标文件 ( *.o) 或存档库 ( *.a) 作为输入产生这样的图书馆。

正如评论中提到的那样,不太可能有充分的理由想要真正做到这一点。

于 2013-02-20T19:10:17.607 回答