工控网首页
>

应用设计

>

【工控适配】望获Linux系统适配英伟达显卡

【工控适配】望获Linux系统适配英伟达显卡

不管是国内网友还是国外网友,适配nvidia显卡,经常会遇到经典的nvidia_drv.so找不到符号的问题,例如: undefined symbol: noPanoramiXExtension。 先说下论坛里网友的解决办法: 网友A的解决办法:哐哐安装一堆nvidia-driver各种版本 网友B的解决办法:哐哐xserver又是升级又是降级,说兼容性问题。 Archlinux 论坛网友的解决办法:[SOLVED] Nvidia driver not loading / Newbie Corner / Arch Linux Forums Archlinux这个网友最后通过高人指导设置了一个环境变量:LD_BIND_NOW。 虽然每个人的解决办法不同,很多时候我认为一点意义没有,最后,搞的越来越玄学! 接下来我们就讲解下如何解决。 常见的错误例如: 执行nvidia-smi

2df71dded01d4093a80eeeff156de71e.png查看X的log后发现:

a629ddf724d64b7396daf4b0dbdaf896.pngNvidia_drv.so : undefined symbol: noPanoramiXExtension 这是英伟达显卡适配过程中非常常见的错误,找不到符号,找不到谁的符号,那自然是xserver中的符号。那么我们去xserver的源代码中看:

6762ff0f8ab3487f97287c490f391ee3.png耐心找定义,发现在os/utils.c中:

1d213e4897d040889edadbea996d7cce.png并给出注释:/* Xinerama is disabled by default unless enabled via +xinerama */ 意思是xinerama拓展功能默认关闭,所有没有打开。我们打开它,重新编译。另外xserver 1.21版本 以上使用了pkgconfig的方式来检测系统是否包含xinerama,如何检测到会自动打开,那接下来就简单了,安装xinerama: 60ca352b25cc4885906cd0654b3575a2.pngdnf install libxinerama1 再去xserver代码中查看,执行menson build

45e3aa0da9b5401f96327380874f4a7b.png果然找到了,接下来直接编译安装: ninja  && ninja install reboot 系统重启后,查看状态:

ba23d8263fc640d1917b3511c0f23e2e.pngNvidia驱动已经正确适配。

审核编辑(
王静
)
投诉建议

提交

查看更多评论
其他资讯

查看更多

【工控方案】望获实时Linux系统与Betaflight的结合:计算与飞控的完美协作

【工控方案】 望获实时Linux系统运行ROS-LLM,千元硬件支持具身智能

【工控资讯】探索RTOS在电力控制系统中的应用价值

【工控方案】基于望获实时Linux和EC_Master的人形机器人实时控制解决方案

【工控资讯】工业机器人中实时操作系统的应用与挑战