我正在寻找一种方法来使现有的专有 ELF 二进制文件(与特定版本的系统库链接)具有可移植性。对于可移植,我的意思是使可执行文件在具有相同处理器架构和兼容系统内核的每个系统上工作,而不必拥有库的源代码(如果没有源代码就没有办法,那也可以) .
到目前为止,我想到了两种可能性,但我不知道它们是否完全有可能,如果有,应该选择哪一种:
- 搜索所有链接库及其依赖项,并将它们包含在二进制文件的子目录中,并将 Library-Path 更改为该目录。
- 将库静态重新链接到二进制文件到一个大的可执行文件(如果程序不根据校验和验证自己)。
许可不是问题,因为我不想分发创建的可移植程序,它仅供私人使用。
感谢您的回答。