ldconfig 如何工作?

ldconfig 如何工作?

我正在使用 Ubuntu 库。我试图向 中添加一些库/usr/lib/<subdir>/并为 中的库创建一些代理/usr/lib/<subdir>/
请注意/usr/lib/<subdir>/存在于 中的一个文件中/etc/ld.so.cond.d/
不幸的是,ldconf行为对我来说似乎非常奇怪且不简单。这就是原因:

当我添加一些库时,/usr/lib/<subdir>/它不会被检测到,直到我从 向它添加符号链接/usr/lib。为什么?

/usr/lib/<subdir>/我发现库通常以三元组的形式放置:

  • /usr/lib/<subdir>/lib<libname>.so - 符号链接到lib<libname>.so.1
  • /usr/lib/<subdir>/lib<libname>.so.1- 符号链接到lib<libname>.so.<version>
  • /usr/lib/<subdir>/lib<libname>.so.<version>- 实际的图书馆

好的。为了创建代理,我决定删除符号链接并添加自己的链接,例如:

  • /usr/lib/<subdir>/lib<libname>abc.so- 符号链接到lib<libname>abc.so.1
  • /usr/lib/<subdir>/lib<libname>abc.so.1- 符号链接到lib<libname>.so.<version>

然后突然当我运行sudo ldconfig更新这个内容时它创建了/usr/lib/<subdir>/lib<libname>.so.1指向 的项/usr/lib/<subdir>/lib<libname>abc.so.1.。为什么?

我完全不明白其中的逻辑。

相关内容