工控網(wǎng)首頁
>

應(yīng)用設(shè)計(jì)

>

工控解惑|英偉達(dá)顯卡適配難題?

工控解惑|英偉達(dá)顯卡適配難題?

不管你是來自國內(nèi),還是遠(yuǎn)在海外的網(wǎng)友,只要給電腦適配 NVIDIA 顯卡,大概率會(huì)碰到那個(gè)經(jīng)典難題:nvidia_drv.so 文件里找不到對(duì)應(yīng)的符號(hào),就像彈出個(gè)報(bào)錯(cuò)提示:undefined symbol: noPanoramiXExtension,是不是看著就頭大?
咱先來瞅瞅論壇里各路網(wǎng)友的 “自救” 大招:
網(wǎng)友 A 那叫一個(gè)簡(jiǎn)單粗暴,瘋狂下載安裝各種版本的 nvidia-driver,心里想著,“我多裝幾個(gè),總有一個(gè)能行吧!”
網(wǎng)友 B 則把目光瞄準(zhǔn)了 xserver,又是給它升級(jí),又是讓它降級(jí),嘴里念叨著 “肯定是兼容性搗的鬼”。
再看看 Archlinux 論壇這位網(wǎng)友,在標(biāo)題為 [SOLVED] Nvidia driver not loading / Newbie Corner / Arch Linux Forums 的帖子里分享經(jīng)驗(yàn),說自己在高手指導(dǎo)下設(shè)置了個(gè)環(huán)境變量 LD_BIND_NOW,這才把問題給摁住了。
不過說實(shí)話,雖說大家辦法各異,但有時(shí)候我忍不住吐槽,這些招啊,好多都治標(biāo)不治本,越折騰越讓人迷糊,跟玄學(xué)似的。
得,咱不扯那些沒用的了,下面就好好講講到底該咋解決這個(gè)麻煩事兒。

給你們看看常見的錯(cuò)誤場(chǎng)景:當(dāng)你執(zhí)行 nvidia-smi 指令,轉(zhuǎn)頭再去查看 X 的運(yùn)行日志,保準(zhǔn)會(huì)瞧見這么一行扎眼的報(bào)錯(cuò):Nvidia_drv.so : undefined symbol: noPanoramiXExtension。

2df71dded01d4093a80eeeff156de71e.png

a629ddf724d64b7396daf4b0dbdaf896.png

這錯(cuò)誤在英偉達(dá)顯卡適配的時(shí)候頻繁冒頭,為啥會(huì)找不到符號(hào)呢?其實(shí)啊,是找不到 xserver 里的符號(hào)。這時(shí)候,就得鉆進(jìn) xserver 的源代碼里一探究竟。

6762ff0f8ab3487f97287c490f391ee3.png

耐著性子找啊找,嘿,在 os/utils.c 這個(gè)文件里發(fā)現(xiàn)了線索,旁邊還有個(gè)注釋寫著:/* Xinerama 是默認(rèn)關(guān)閉的,除非通過 +xinerama 開啟 */,啥意思呢?就是說 xinerama 這個(gè)拓展功能,默認(rèn)是關(guān)著的,沒開啟呢。

1d213e4897d040889edadbea996d7cce.png

那咱就動(dòng)手把它打開,再重新編譯一遍。另外要注意,xserver 1.21 版本往上走,它會(huì)用 pkgconfig 來檢測(cè)系統(tǒng)里有沒有 xinerama,要是檢測(cè)到有,就自動(dòng)幫你打開,是不是還挺智能?那咱就順著它的意思,先安裝 xinerama,在終端敲一行:dnf install libxinerama1。

60ca352b25cc4885906cd0654b3575a2.png

接著再回 xserver 代碼里瞅瞅,執(zhí)行一下 menson build,這下妥了,該有的都有了。下一步,麻溜地編譯安裝:ninja && ninja install,完事重啟系統(tǒng),輸入 reboot。

45e3aa0da9b5401f96327380874f4a7b.png

等系統(tǒng)重啟好,再去查看顯卡狀態(tài),哈,Nvidia 驅(qū)動(dòng)已經(jīng)穩(wěn)穩(wěn)當(dāng)當(dāng)?shù)剡m配好啦,是不是還挺有成就感?

ba23d8263fc640d1917b3511c0f23e2e.png

還有什么關(guān)于操作系統(tǒng)的疑問,可以隨時(shí)來我們網(wǎng)站交流切磋

也歡迎免費(fèi)下載體驗(yàn)咱的國產(chǎn)嵌入式操作系統(tǒng)

https://www.onewos.com/

審核編輯(
王靜
)
投訴建議

提交

查看更多評(píng)論
其他資訊

查看更多

工控解決方案|賦能新一代工業(yè)機(jī)器人的國產(chǎn)操作系統(tǒng)

工控獨(dú)家|基于實(shí)時(shí)linux的國產(chǎn)化PLC解決方案

工控聯(lián)盟|國科環(huán)宇成為高端裝備制造聯(lián)合實(shí)驗(yàn)室初始成員單位

工控聯(lián)合|Linux與EtherCAT的硬實(shí)時(shí)解決方案

工控重磅|望獲實(shí)時(shí)Linux系統(tǒng)和創(chuàng)龍科技TL3562-MiniEVM開發(fā)板適配成功