我目前在制作可移植的linux二进制文件时遇到了困难。我已经尝试通过以下语法使用ELF Statifier:
statifier /bin/ls static-ls
然后尝试在另一台都是64位的机器上运行它,但它给了我一个分段错误。我对谷歌做了一些研究,这似乎是一个常见的问题。现在,我还没有找到任何解决方案,我想知道是否有人有解决方案?
我也尝试过Ermine,但由于这不是一个免费软件(30天免费试用(,我更喜欢使用ELF Statifier或其他解决方案,我非常愿意接受任何建议,只要我能让linux二进制文件便携。
谢谢。
此线程表明segfault可能是由记忆随机化。
ELF Statifier的网站证实随机化是一个问题:
静态可执行文件并不总是在具有堆栈或VDSO随机化的系统上工作。不幸的是,我还找到了解决这个问题的方法。还有另一个解决方案:Ermine。Ermine,与不受堆栈/VDSO随机化影响的他汀类药物不同。
此线程建议您可以在目标平台上关闭随机化作为一种变通方法。我不建议这样做,因为随机化是一种安全措施;关闭它可能会使系统更容易受到攻击。
我想这意味着如果不对目标系统的安全性做出妥协,ELF Statifier将无法工作。