Linker 在ld.so的上下文中,什么是预链接?ld_TRACE_预链接是如何影响它的
我试图理解操作Linker 在ld.so的上下文中,什么是预链接?ld_TRACE_预链接是如何影响它的,linker,ld,Linker,Ld,我试图理解操作ld的所有方法。因此,我无法理解ld\u TRACE\u PRELINKING环境变量的文档 主页上说: LD_TRACE_PRELINKING (since glibc 2.4) If this environment variable is defined, trace prelinking of the object whose name is assigned to this environment variable. (Use
ld的所有方法。因此
,我无法理解ld\u TRACE\u PRELINKING
环境变量的文档
主页上说:
LD_TRACE_PRELINKING (since glibc 2.4)
If this environment variable is defined, trace prelinking of the object whose name is assigned to this environment variable. (Use ldd(1) to get a list of the objects that might be traced.) If the object name is not recognized, then
all prelinking activity is traced.
这并不是非常有用,因为我找不到任何关于在上下文ld.so
中对象的预链接的信息,以及在激活ld\u TRACE\u LOADED\u对象时它是否也被跟踪的信息
那么,什么是ld.So
中的预链接,ld\u TRACE\u预链接
如何影响ld.So
?动态加载程序/链接器(如ld.So
)必须在程序执行开始时以及在动态加载共享库时执行符号解析和绑定操作。其中一些活动可以提前执行,而无需实际执行程序代码,并且可以缓存结果以供实际执行期间使用。这样可以缩短启动时间和整个程序的执行时间。在linux上,prelink
是驱动此优化的工具,其核心功能在ld中实现。因此
很有意义,谢谢。我可以通过任何链接了解更多详细信息吗?我在最初的几个网络搜索结果中发现了一些不错的链接。一旦你看完了,你可以发布更具体的问题。一般来说,LD_TRACE_*应该能够跟踪来自动态链接器/加载器的关于特定功能的消息。