解决freesurfer:freeview命令在ubuntu20.04.5环境下报错“... no Qt platform platform plugin could be initialized .

本文描述了解决在Ubuntu系统中使用FreeView指令时遇到的错误,涉及pyqt5安装、libGL错误,以及与CUDA版本不匹配导致的swrast_dri.so问题。通过尝试安装相关库、替换libGL.so文件和修复swrast_dri.so路径,最终解决了全屏闪退问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

问题1:

输入freeview指令后,报错“... no Qt platform platform plugin could be initialized ...”

解决:

使用命令安装pyqt5:

sudo apt-get install python3-pyqt5
sudo apt-get install python3-pyqt5.qttools

执行命令过程中提示的非报错信息未予理会

问题2:

再次报错:

libGL error:MESA-LOADER:failed to open swrast:/usr/lib/dri/swrast_dri.so: can not open shared object file: Nosuch File or directory (search paths /usr/lib/x86_64-linux-gnu/dri:\$${ORIGIN}dri:/usr/lib/dri, suffix _dri)

libGL error: failed to load driber: swrast

Aborted (core dumped)

解决:

尝试:

sudo apt-get install -y libgl1-mesa-glx mesa-utils

问题未解决

尝试:

sudo apt-get install mlocate

仍未解决

根据博客解决Ubuntu WPS演示全屏闪退(swrast_dri.so: undefined symbol: _glapi_tls_Dispatch)的错误-CSDN博客

尝试:

locate libGL.so

输出:

我判断,因为我的cuda版本与博客中所写可能不同,所以我用来替代原系统libGL.so的文件应该是位于nsight-systems文件夹(因为Nsight Compute是一个CUDA应用程序的交互式kernel分析器)

所以我使用的命令是

sudo mv /usr/lib/x86_64-linux-gnu/libGL.so /usr/lib/x86_64-linux-gnu/libGL.so.bak
sudo ln -s /usr/local/cuda-11.7/nsight-systems-2022.1.3/host-linux-x64/Mesa/libGL.so.1.5.0 /usr/lib/x86_64-linux-gnu/libGL.so

博客中第二个文件因为我使用locate命令只搜到一个所以就没用


此时问题仍未解决,重新分析了报错信息后,根据博客[已解决] libGL error: MESA-LOADER: failed to open swrast_libgl error: mesa-loader: failed to open swrast: /-CSDN博客

认为可能是swrast_dri.so文件出现问题
继续尝试:

cd  /usr/lib/
sudo mkdir dri
sudo ls -s  /lib/x86_64-linux-gnu/dri/swrast_dri.so    swrast_dri.so

注意:这个地方的文件是swrast_dri.so不是kms_swrast_dri.so,注意这个前缀不要搞错,博主不小心搞错了后面才发现

至此问题解决,freeview命令正常运行

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值