进程如何在 /usr/lib 下的文件夹中找到共享库
How does processes find shared libraries in folders under /usr/lib
假设一个程序需要文件夹/usr/lib/foo下的共享库(bar.so)。我知道如果 bar.so 直接在 /usr/lib 下,它会被自动找到。但就我而言,无法自动找到该库,因为 - 我认为是 - 它位于文件夹 /usr/lib/foo 下。但是 /usr/lib 下还有大量其他文件夹,使用这些库的相应程序可以无缝运行。
那么,这个过程是如何运作的,我该如何解决我的问题?
谢谢。
各个程序可以控制在何处搜索其库。
也可以使用 LD_LIBRARY_PATH 环境变量控制搜索路径:
http://tldp.org/HOWTO/Program-Library-HOWTO/shared-libraries.html
尝试将 /usr/lib/foo 附加到您的 LD_LIBRARY_PATH 环境变量。
假设一个程序需要文件夹/usr/lib/foo下的共享库(bar.so)。我知道如果 bar.so 直接在 /usr/lib 下,它会被自动找到。但就我而言,无法自动找到该库,因为 - 我认为是 - 它位于文件夹 /usr/lib/foo 下。但是 /usr/lib 下还有大量其他文件夹,使用这些库的相应程序可以无缝运行。
那么,这个过程是如何运作的,我该如何解决我的问题?
谢谢。
各个程序可以控制在何处搜索其库。
也可以使用 LD_LIBRARY_PATH 环境变量控制搜索路径: http://tldp.org/HOWTO/Program-Library-HOWTO/shared-libraries.html
尝试将 /usr/lib/foo 附加到您的 LD_LIBRARY_PATH 环境变量。