指定運行時動態庫位置的三種方式
- 在Linux 中,動態庫的搜索路徑除了默認的搜索路徑外,還可經過三種方法來指定:方法一:在配置文件/etc/ld.so.conf中指定動態庫搜索路徑;方法二:經過環境變量LD_LIBRARY_PATH指定動態庫搜索路徑;方法三:在編譯目標代碼時指定該程序的動態庫搜索路徑。
衆所周知,Linux動態庫的默認搜索路徑是/lib和/usr/lib。動態庫被建立後,通常都複製到這兩個目錄中。當程序執行時須要某動態庫,而且該動 態庫還未加載到內存中,則系統會自動到這兩個默認搜索路徑中去查找相應的動態庫文件,而後加載該文件到內存中,這樣程序就能夠使用該動態庫中的函數,以及該動態庫的其它資源了。在Linux 中,動態庫的搜索路徑除了默認的搜索路徑外,還能夠經過如下三種方法來指定。
經過gcc參數指定
- 經過gcc參數制定以後就不須要配置環境變量和配置文件了。
-Wl,-rpath=${LD_PATH}
經過設置環境變量
- 只對當前shell有效,關閉shell或者退出當前用戶則環境變量配置及無效了。
export LD_LIBRARY_PATH=/root/code/opencv/opencv-3.2.0/build/build/lib
經過配置文件
修改/etc/ld.so.conf文件。 其文件內容爲: [root@VM_24_16_centos etc]# cat /etc/ld.so.conf include ld.so.conf.d