【Ubuntu】Ubuntu16.04下WPS演示闪退
1 问题描述
Ubuntu16.04在更新了NVIDIA驱动之后,出现WPS演示闪退的问题。
在命令行运行WPS演示:
$ cd /opt/kingsoft/wps-office/office6
$ ./wpp
得到的错误信息如下:
libGL error: No matching fbConfigs or visuals found
libGL error: failed to load driver: swrast
Critical: Errors linking simple shader: ""
Critical: Errors linking blit shader: ""
段错误 (核心已转储)
可能是没有使用NVIDIA驱动的libGL库导致的。
2 删除/usr/lib/i386-linux-gnu/mesa/libGL.so.1
如果使用nvidia驱动程序,有时会看到libGL.so.1指向由mesa和NVIDIA提供的模糊libGL(即有多个libGL)。运行如下命令测试:
$ sudo ldconfig -p | grep -i gl.so
输出如下:
...
libGL.so.1 (libc6,x86-64) => /usr/lib/nvidia-378/libGL.so.1
libGL.so.1 (libc6) => /usr/lib/i386-linux-gnu/mesa/libGL.so.1
libGL.so.1 (libc6) => /usr/lib32/nvidia-378/libGL.so.1
...
可以看到有mesa提供的libGL.so.1,也有NVIDIA提供的。
现在只需要移除mesa提供的libGL.so.1,就可以恢复正常:
$ sudo rm /usr/lib/i386-linux-gnu/mesa/libGL.so.1
上面的方法是别人提供的,我照做了,但是问题仍然没有解决,因为我的链接不是多了libGL.so.1,而是多了libGL.so,如下所示:
...
libGL.so.1 (libc6,x86-64) => /usr/lib/nvidia-384/libGL.so.1
libGL.so.1 (libc6) => /usr/lib32/nvidia-384/libGL.so.1
libGL.so (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libGL.so
libGL.so (libc6,x86-64) => /usr/lib/nvidia-384/libGL.so
libGL.so (libc6) => /usr/lib32/nvidia-384/libGL.so
...
可是我没有删除/usr/lib/x86_64-linux-gnu/libGL.so,因为我不敢 ?,所以我采用了以下方法,重定向/usr/lib/x86_64-linux-gnu/libGL.so。
3 重链接/usr/lib/x86_64-linux-gnu/libGL.so
先找到libGL.so的位置(其实不必要):
$ locate libGL.so
然后备份libGL.so,再重新创建链接,指向NVIDIA的libGL.so:
$ sudo mv /usr/lib/x86_64-linux-gnu/libGL.so /usr/lib/x86_64-linux-gnu/libGL.so.bak
$ sudo ln -s /usr/lib/nvidia-352/libGL.so.352.63 /usr/lib/x86_64-linux-gnu/libGL.so
这样就可以了,我的问题就得到了解决。不需要重新创建libglx.so的链接,也不需要注意循环登录问题。
不过之前我参考该博客一步一步执行,说是要那样做才不会出现循环登录问题,我照做了最后却出现了循环登录的问题,害得我重新安装了NVIDA驱动、CUDA和cuDNN,差点就想重装系统了,后来查看了错误报告,如下:
$ vim ~/.xsession-errors
然后根据里面的错误信息正确解决了循环登录问题。
4 重复登录
重新安装NVIDIA驱动后出现了重复登录的问题,最后根据资料和自己的理解,找到了解决方法,如下所示:
sudo rm /usr/lib/x86_64-linux-gnu/libGL.so.1
sudo ln -s /usr/lib/x86_64-linux-gnu/libGL.so /usr/lib/x86_64-linux-gnu/libGL.so.1
其实就是参考的博客中把libGL.so.1和libGL.so的顺序搞错了。
5 总结
正确的操作步骤应该是:
- 先查看自己的系统中是libGL.so多了,还是libGL.so.1多了
- 根据实际情况修改或删除多出来的libGL.so或libGL.so.1
- 修改还是删除,自己决定,但是千万记得备份
6 参考
- Steam: libGL error: No matching fbConfigs or visuals found libGL error: failed to load driver: swrast
- 解决Ubuntu WPS演示全屏闪退(swrast_dri.so: undefined symbol: _glapi_tls_Dispatch)的错误
【Ubuntu】Ubuntu16.04下WPS演示闪退相关推荐
- wepe 装linux ubuntu,Ubuntu16.04下安装Wechat的实现方法
Ubuntu16.04下安装Wechat 很久没写博客了,前两天电脑因为teamviewer不了,原因显示是libqt5gui5版本过低,研究了一波更新,卸载了libqt5gui5,和它的依赖qtba ...
- 解决ubuntu 22.04上teamViewer/toDesk闪退等问题
解决办法:同时安装teamviewer和向日葵等远程控制软件,同时开,g了一个用另一个重启. 向日葵官网下载:https://sunlogin.oray.com/download/linux team ...
- 解决 ubuntu 14.04下,eclipse adt-bundle-linux 闪退的问题,最新ADT-23.0.7
解决 ubuntu 14.04下,eclipse adt-bundle-linux 闪退的问题,最新ADT-23.0.7 今天 早上,早早的来到办公室,想把领导昨天布置的任务,快速完成.其实,就是很简 ...
- Ubuntu 13.04下安装WPS for Linux
有人说Linux下不是有open office 和libre office么?是啊,可是将windows下的doc文档或者ppt放到Libreoffice上打开的时候我们很明显的可以看到格式完全不统一 ...
- Ubuntu 14.04安装WPS
Ubuntu 14.04安装WPS Linux下有个liboffice,但是用着感觉老是不方便,还与office的一些文件不太兼容,很不方便 去官网下载deb包,地址http://community. ...
- Ubuntu 18.04下autoware 1.12 安装日志(含花屏解决方法)
Ubuntu 18.04下autoware 1.12 安装日志 安装Autoware 1.12 Autoware官网信息 下载相关依赖项 新建文件夹下载autoware 1.12 编译autoware ...
- ubuntu 20.04 下安装easyconnect记录
最近需要在linux下连接公司内网,试了下主要有一下两个问题: 1.easyconnect在ubuntu20下无法打开: 2.在解决第一个问题后在easyconnect登陆过程中闪退. 解决方案主要参 ...
- ubuntu16.04下ROS最新换源方法,解决Hash sum mismatch 问题
1.更换源 备份原始数据 cd /etc/apt/ sudo cp sources.list sources.list.bak sudo gedit sources.list 科大源: deb htt ...
- Ubuntu16.04下Mongodb官网卸载部署步骤(图文详解)(博主推荐)
不多说,直接上干货! 前期博客 Ubuntu16.04下Mongodb官网安装部署步骤(图文详解)(博主推荐) https://docs.mongodb.com/manual/tutorial/ins ...
最新文章
- Color the ball----HDOJ1556
- Servlet接口中有哪些方法?
- 微服务架构设计模式 pdf_六种常用的微服务架构设计模式之一: 入门级模式...
- 机器学习基础-聚类算法-15
- GNS结合SecureCRT连接问题
- grid++中打印表格时怎么让每页有打印表头_一张表学习EXCEL(七):打印也有方法...
- 计算机三级网络技术知识点cn,计算机等级三级网络技术考试详解
- Thingsboard 3.1.0 - 远程控制和GPIO状态显示
- 转载:在Python 3中使用深度森林(Deep Forest)进行分类
- Python实现统计二叉树叶子结点个数
- telnet 回显 linux,telnet实现本地回显
- Android接入融云即时通讯SDK,实现单聊和发送自定义消息。
- cad线加粗怎么设置_cad2016怎么把线加粗
- 沪牌每月价格预测模型
- python 类的执行中保部存值_c/c++关于内存分配的知识(非常详细的比较,且VirtualAlloc分配内直接在进程的地址空间中保留一快内存)...
- C# LINQ源码分析之ToList()
- JAVA梅森旋转随机算法,你没听过的梅森旋转算法
- 局域网文件共享需要打开服务器,局域网共享工具有什么用怎么开启
- 分布式多级服务器架构设计构思
- 苹果新一代iPad Pro规格配置怎样?