我有一个应用程序,比如gedit,它是动态链接的,我没有源代码。所以我不能像我喜欢的那样编译它。我想要做的是使其静态链接并将其移动到没有必要的库来运行该应用程序的系统。那么有可能做到这一点吗?
答案 0 :(得分:1)
理论上可行。你基本上必须完成与动态链接器相同的工作,并进行一些修改,即
所以objdump
,readelf
和objcopy
将你朋友的某些。
任务并不容易,结果既不是自动的,也不是(可能)稳定的。
您可能希望通过实际拦截动态链接器(即上面的所有步骤,除了最后一步)将其他人尝试检出this code并将结果转储到磁盘。
它基于this tool,所以任何人都可以打赌它是否适用于最新的内核。
(它可能没有 - 你至少需要修补它以反映新的结构。这样做my attempt。警告经纪人)。