我正在尝试我自己的 BSD 或 Linux 发行版。我想以对最终用户有意义的方式组织系统文件。我希望他们能够访问系统,而不会留下 *nix 留下的所有文件困惑。
有没有办法将多个动态库合并到一个文件中而不丢失动态链接?我将有权访问所有源文件。
最佳答案
这可能与系统相关,但至少对于 ELF(Linux 使用的可执行格式)来说,这是不可能的。对于 ELF,共享库有点像可执行文件:它们是链接过程的最终产品,并不是为了分解或重新链接为不同的安排而设计的。
如果您拥有进入一堆共享库的所有组件的源代码,我想您可以将它们全部链接到一个巨大的共享库中,但您将使用目标文件(*.o
)或存档库(*.a
)作为生成此类库的输入。
正如评论中提到的,不太可能有充分的理由想要真正这样做。
关于unix - UNIX 共享库可以合并为一个库吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14987258/