設定 Linux 的 LD_LIBRARY_PATH 變數

來源:互聯網
上載者:User

在 Linux 下,如果你寫好了自己的動態連結程式庫,需要在其它程式裡調用,則需要讓這些程式能找到這些動態連結程式庫。如果設定不對,會出現類似如下的錯誤:

test: error while loading shared libraries: libexampleso.so.0: cannot open shared object file: No such file or directory

這是因為沒有把動態連結程式庫的安裝路徑(例如說是 /usr/local/lib )放到變數 LD_LIBRARY_PATH 裡。

這時,可以用命令 export 來臨時測試確認是不是這個問題:

export LD_LIBRARY_PATH=/usr/local/lib

在終端裡運行上面這行命令,再運行這個可執行檔,如果運行正常就說明是這個問題。

接下來的問題是:以上做法,只是臨時設定變數 LD_LIBRARY_PATH ,下次開機,一切設定將不複存在;如何把這個值持續寫到 LD_LIBRARY_PATH 裡呢?

我們可以在 ~/.bashrc 或者 ~/.bash_profile 中加入 export 語句,前者在每次登陸和每次開啟 shell 都讀取一次,後者只在登陸時讀取一次。我的習慣是加到 ~/.bashrc 中,在該檔案的未尾,可採用如下語句來使設定生效:

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib

修改完後,記得關掉當前終端並重新開啟一個新的終端,從而使上面的配置生效。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.