Linux設(shè)置動態(tài)庫路徑和環(huán)境變量
Linux安裝源碼編譯出來的庫后,如何讓系統(tǒng)默認(rèn)識別到.
如編譯后安裝在/usr/local/aarch64_qt5.12.0 下:
1、設(shè)置動態(tài)庫鏈接配置
如果不設(shè)置動態(tài)庫連接,系統(tǒng)就找不到需要的*.so,導(dǎo)致軟件執(zhí)行失敗。
可以ldd一下,如:
pi@NanoPi-NEO-Plus2:~$ ldd untitled
linux-vdso.so.1 => (0x0000ffffba839000)
libQt5Widgets.so.5 => not found
libQt5Gui.so.5 => not found
libQt5Core.so.5 => not found
libpthread.so.0 => /lib/aarch64-linux-gnu/libpthread.so.0 (0x0000ffffba7e2000)
libstdc++.so.6 => /usr/lib/aarch64-linux-gnu/libstdc++.so.6 (0x0000ffffba653000)
libm.so.6 => /lib/aarch64-linux-gnu/libm.so.6 (0x0000ffffba5a6000)
libgcc_s.so.1 => /lib/aarch64-linux-gnu/libgcc_s.so.1 (0x0000ffffba585000)
libc.so.6 => /lib/aarch64-linux-gnu/libc.so.6 (0x0000ffffba43e000)
/lib/ld-linux-aarch64.so.1 (0x0000ffffba80e000)
最笨的方法就是將編譯出來對應(yīng)的so 拷貝到/usr/lib或者/lib下,如果對應(yīng)的so很多,那么就涼涼了。
設(shè)置方法:
1)在/etc/ld.so.conf.d路徑下,創(chuàng)建動態(tài)庫配置文件*.conf,例如:
sudo vim /etc/ld.so.conf.d/Qt5.conf
在文件中添加:
/usr/local/aarch64_qt5.12.0/lib
2)加載動態(tài)庫配置
執(zhí)行命令:sudo ldconfig
pi@NanoPi-NEO-Plus2:~$ ldd untitled
linux-vdso.so.1 => (0x0000ffffa4b1a000)
libQt5Widgets.so.5 => /usr/local/aarch64_qt5.12.0/lib/libQt5Widgets.so.5 (0x0000ffffa451d000)
libQt5Gui.so.5 => /usr/local/aarch64_qt5.12.0/lib/libQt5Gui.so.5 (0x0000ffffa4039000)
libQt5Core.so.5 => /usr/local/aarch64_qt5.12.0/lib/libQt5Core.so.5 (0x0000ffffa39ed000)
libpthread.so.0 => /lib/aarch64-linux-gnu/libpthread.so.0 (0x0000ffffa39c1000)
libstdc++.so.6 => /usr/lib/aarch64-linux-gnu/libstdc++.so.6 (0x0000ffffa3832000)
libm.so.6 => /lib/aarch64-linux-gnu/libm.so.6 (0x0000ffffa3785000)
libgcc_s.so.1 => /lib/aarch64-linux-gnu/libgcc_s.so.1 (0x0000ffffa3764000)
libc.so.6 => /lib/aarch64-linux-gnu/libc.so.6 (0x0000ffffa361d000)
libdl.so.2 => /lib/aarch64-linux-gnu/libdl.so.2 (0x0000ffffa360a000)
/lib/ld-linux-aarch64.so.1 (0x0000ffffa4aef000)
2、設(shè)置環(huán)境變量
執(zhí)行相關(guān)程序時,不需要切換到指定目錄才能執(zhí)行,可以在任意目錄下執(zhí)行。
設(shè)置方法:
1.當(dāng)前會話臨時生效:命令行輸入 export PATH=$PATH:/usr/local/aarch64_qt5.12.0/bin
2.用戶永久生效:vi ~/.bashrc 最后一行輸入 export PATH=$PATH:/usr/local/aarch64_qt5.12.0/bin
讓環(huán)境變量生效:source .bashrc
3.全局永久生效:
在/etc/profile或者/etc/bash.bashrc 中為$PATH添加路徑,如果名字一樣 需要把新的路徑放在其他路徑前面。
export PATH=$PATH:/usr/local/aarch64_qt5.12.0/bin
讓環(huán)境變量生效:source /etc/profile
pi@NanoPi-NEO-Plus2:~$ echo $PATH /usr/local/aarch64_qt5.12.0/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games
免責(zé)聲明:本文內(nèi)容由21ic獲得授權(quán)后發(fā)布,版權(quán)歸原作者所有,本平臺僅提供信息存儲服務(wù)。文章僅代表作者個人觀點,不代表本平臺立場,如有問題,請聯(lián)系我們,謝謝!