将共享库打包到精灵中

是否有一个实用工具可以把所有精灵所需要的所有东西都变成静态,然后将精灵转换成为免费的?

以下是您可能会觉得有用的一些项目:

  • Statifier (基本上做你想要的)
  • ERESI (可以做你想做的,也可以分析ELF的目标)

注:我没有使用任何一个应用程序我自己。

Statifier是一个选项。 另一种选择是貂皮 。 虽然Ermine是商业化的,但它在内存随机化系统上的表现要好于定级者。

我用代码逻辑提到的Statifier。

对于像ethtool这样的几个Linux命令,它运行良好。

可能不是,尽管在理论上,毫无疑问,这是可以做到的。

要注意的一个方面是 – 典型的程序不会使用来自给定SO的所有代码,所以盲目地包含每个SO中的所有材料将会给你一个怪异的臃肿的可执行文件。 一个经典的静态链接只包含需要的。

另一个要注意的方面是C ++模板实例化。 我假设这些将主要出现在可执行文件中(不是SO的一部分)。

您可以在编译时使用-static链接。 你正在寻找这个后编译?