亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何解決linux找不到動態庫的問題?

發布時間:2020-05-25 14:36:24 來源:億速云 閱讀:217 作者:鴿子 欄目:建站服務器

動態庫即共享庫,說到linux找不到動態庫的問題,首先要了解動態庫的特點:

● 動態庫把對一些庫函數的鏈接載入推遲到程序運行的時期。

● 可以實現進程之間的資源共享。(因此動態庫也稱為共享庫)

● 將一些程序升級變得簡單。

● 甚至可以真正做到鏈接載入完全由程序員在程序代碼中控制(顯示調用)。

由上述中的第1點可知,動態庫并不是像靜態庫那樣將庫文件以二進制形式打包到程序中,而是在程序運行到需要調用對應庫函數這個時機的時候動態加載動態庫,這時候系統只知道動態庫的名字,而不知道絕對路徑,此時就需要系統動態載入器(dynamic linker/loader);對于elf的可執行程序,是由ld-linux.so來完成的,它先后搜索elf文件的DT_RPATH段(不可控) =》 環境變量LD_LIBRARY_PATH =》 /etc/ld.so.cache文件列表 =》 /lib/和/usr/lib 目錄找到庫文件后載入內存。

那么我們需要做的就是將動態庫所在目錄的絕對路徑加到動態載入器搜索序的任一次序中,下面說具體實現方法:

方法1:拷貝自己制作的共享庫到/lib或/usr/lib,不推薦

方法2:將動態庫所在目錄的絕對路徑添加到系統環境變量中

2.1、將動態庫所在目錄的絕對路徑臨時添加到環境變量中(隨終端關閉失效)

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/chiliast/homework/day03/shared/lib

2.2、將動態庫所在目錄的絕對路徑設置到~/.bashrc或/etc/profile中(永久生效)

用戶級別:追加庫路徑到~/.bashrc文件尾

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/chiliast/homework/day03/shared/lib

source ~/.bashrc 或 . ~/.bashrc使配置生效

系統級別:追加庫路徑到/etc/profile文件尾

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/chiliast/homework/day03/shared/lib

source /etc/profile 或 ./etc/profile使配置生效

方法3:將動態庫所在目錄的絕對路徑添加到 /etc/ld.so.cache文件中(2步實現)

編輯/etc/ld.so.conf文件,加入庫文件所在目錄的路徑

運行ldconfig (需要super user權限),該命令會重建/etc/ld.so.cache文件

以上就是linux動態庫找不到怎么辦的詳細內容,更多請關注億速云其它相關文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

无为县| 贵阳市| 祁东县| 乌海市| 托里县| 隆子县| 横山县| 丰宁| 鄯善县| 布尔津县| 汶川县| 博湖县| 万安县| 莱州市| 昭苏县| 唐山市| 丽水市| 建阳市| 宜章县| 剑河县| 泾阳县| 漾濞| 顺义区| 浑源县| 鄱阳县| 长泰县| 芦溪县| 罗江县| 阿克苏市| 白沙| 大姚县| 华阴市| 内乡县| 黑龙江省| 新源县| 威宁| 高密市| 建昌县| 金昌市| 岳阳市| 临泽县|