所有Linux版本都使用/etc/ld.so.preload吗?

时间:2015-07-07 00:12:15

标签: linux shared-libraries

我正在阅读一组Linux共享库的指令,jemalloc,它将在运行时预加载,因为它会重载像malloc这样的函数。导致库被预加载的一种方法(即在任何其他可能具有相同名称的函数的共享库之前在程序启动时加载)是在系统变量LD_PRELOAD中创建一个条目;另一种方法是在文件/etc/ld.so.preload中创建一个条目。后一种方法将使其成为所有用户的默认设置,而不仅仅是单个实例。但是后者的说明的作者说,只知道在Debian Linux上工作。我一直在寻找能够清楚回答的文档:所有Linux版本都使用/etc/ld.so.preload;所有Unix风味;或只是某些?

1 个答案:

答案 0 :(得分:2)

/etc/ld.so.preload是GLIBC的一项功能。

  

所有Linux风格

大多数,但是并非所有,Linux发行版确实使用了GLIBC,它将适用于它们。

  

所有Unix风格

大多数非Linux UNIX版本使用GLIBC,因此它不适用于它们。