Linker 我是否可以轻松构建一个静态二进制文件以在fakeroot内部使用?如何构建?

Linker 我是否可以轻松构建一个静态二进制文件以在fakeroot内部使用?如何构建?,linker,static-linking,Linker,Static Linking,fakeroot似乎构建了一些libfakeroot.a(但在.lib目录中)。 但我不确定静态链接器是否真的可以像动态链接器那样替换/重命名符号。似乎解决方案是使用fakeroot ng,它适用于静态链接的二进制文件。fakeroot使用动态链接器来实现其魔力(具体来说,LD_预加载)。不幸的是,动态链接器不参与加载静态链接的二进制文件(这就是动态链接器本身被调用的方式:/lib/ld linux.so.2是静态编译的) 如上所述,据我所知,您唯一的选择是使用,它使用完全不同的机制注入到流程中

fakeroot似乎构建了一些libfakeroot.a(但在.lib目录中)。
但我不确定静态链接器是否真的可以像动态链接器那样替换/重命名符号。

似乎解决方案是使用fakeroot ng,它适用于静态链接的二进制文件。

fakeroot使用动态链接器来实现其魔力(具体来说,LD_预加载)。不幸的是,动态链接器不参与加载静态链接的二进制文件(这就是动态链接器本身被调用的方式:/lib/ld linux.so.2是静态编译的)

如上所述,据我所知,您唯一的选择是使用,它使用完全不同的机制注入到流程中,因此,能够毫无问题地处理静态链接库

事实上,静态链接库是我开始编写fakeroot ng的部分原因。当时,没有办法告诉ldconfig在子树上运行,ldconfig是静态链接的

沙查尔