![libGL 错误:MESA-LOADER:无法打开 iris(搜索路径 /usr/lib64/dri)](https://linux22.com/image/183861/libGL%20%E9%94%99%E8%AF%AF%EF%BC%9AMESA-LOADER%EF%BC%9A%E6%97%A0%E6%B3%95%E6%89%93%E5%BC%80%20iris%EF%BC%88%E6%90%9C%E7%B4%A2%E8%B7%AF%E5%BE%84%20%2Fusr%2Flib64%2Fdri%EF%BC%89.png)
我正在尝试在 Fedora 33 上运行一个应用程序,但是当我运行可执行文件时,出现此错误:
error while loading shared libraries: libnsl.so.1: cannot open shared object file: No such file or directory
libGL error: MESA-LOADER: failed to open iris (search paths /usr/lib64/dri)
libGL error: failed to load driver: iris
libGL error: MESA-LOADER: failed to open swrast (search paths /usr/lib64/dri)
libGL error: failed to load driver: swrast
X Error of failed request: GLXBadContext
Major opcode of failed request: 149 (GLX)
Minor opcode of failed request: 6 (X_GLXIsDirect)
Serial number of failed request: 52
Current serial number in output stream: 51
我尝试按照这里的线程:https://www.reddit.com/r/Fedora/comments/hhytvl/libgl_error_mesaloader_failed_to_open_iris/但还没有得到任何工作
请注意,驱动程序iris_dri.so
同时存在于/usr/lib/dri
和/usr/lib64/dri
感谢任何帮助,提前致谢!
答案1
我在 Gentoo Linux 系统上遇到了同样的警告(但仅限于 iris 部分)。就我而言,解决方案是重新安装台面软件包支持 Iris 视频卡。显然,如果我有足够的知识来识别它,我笔记本电脑上的“Intel iRISx 显卡”标签就会表明这一点。
我不知道 Fedora 系统的等效项是什么,但类似的东西(mesa 包的 iris 选项?;单独的 iris 包?)也应该可以解决您的问题。
答案2
该问题及其解决方案的解释位于https://stackoverflow.com/a/71010344/6079195。基本上,您需要在系统中强制加载 libstdc++.so.6,优先于其他版本。
要在文件系统中找到此文件:
find / -name libstdc++.so.6 2>/dev/null
然后将导出LD_PRELOAD添加到.bashrc文件中,例如:
export LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libstdc++.so.6