Ubuntu18.04安装微信以及打开闪退问题

在ubuntu上安装微信不像在windows上那么操作简单,在安装使用过程碰到的问题,主要是开启后闪退问题记录以下,仅供参考:
本文使用docker 安装配置微信,也可以使用wine 安装,但是笔者找了几个版本的微信安装包,兼容性总不好。

  • 首先安装docker并开启
    sudo apt install docker.io
    sudo systemctl enable --now docker
    sudo service docker start
  • 安装微信
    docker pull bestwu/wechat
  • 获取audio的组ID
    getent group audio | cut -d: -f3
    parrotsec系统中,值为 29
  • 创建一个yml文件,比如说这里创建 docker-tim.yml
    //创建格式
    gedit 文件位置/文件名比如:
    gedit docker-wechat.yaml
    以上操作等价于gedit ~/docker-wechat.yaml 是在主目录中创建一个名为docker-wechat.yaml文 件可以更改其他目录比如:
    gedit ~/文档/docker-wechat.yaml
  • 弹出文件进行编辑并保存
 version: '2'
 services:
  wechat:
    image: bestwu/wechat
    container_name: wechat
    devices:
      - /dev/snd
    volumes:
      - /tmp/.X11-unix:/tmp/.X11-unix
      - $HOME/WeChatFiles:/WeChatFiles
    environment:
      - DISPLAY=unix$DISPLAY
      - QT_IM_MODULE=fcitx
      - XMODIFIERS=@im=fcitx
      - GTK_IM_MODULE=fcitx
      - AUDIO_GID=29 # 可选 默认63(fedora) 主机audio gid 解决声音设备访问权限问题
      - GID=1000 # 可选 默认1000 主机当前用户 gid 解决挂载目录访问权限问题
      - UID=1000 # 可选 默认1000 主机当前用户 uid 解决挂载目录访问权限问题

安装完毕 执行命令
sudo docker-compose -f docker-wechat.yaml up
运行后发现会有闪退情况,排查:
sudo ldconfig -p | grep -i gl.so

    libwayland-egl.so.1 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libwayland-egl.so.1
	libwayland-egl.so.1 (libc6) => /usr/lib/i386-linux-gnu/libwayland-egl.so.1
	libwayland-egl.so (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libwayland-egl.so
	libflite_usenglish.so.1 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libflite_usenglish.so.1
	libcogl.so.20 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libcogl.so.20
	libQt5OpenGL.so.5 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libQt5OpenGL.so.5
	libQt5EglFsKmsSupport.so.5 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libQt5EglFsKmsSupport.so.5
	libQt5EglFSDeviceIntegration.so.5 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libQt5EglFSDeviceIntegration.so.5
	libOpenGL.so.0 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libOpenGL.so.0
	libOpenGL.so (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libOpenGL.so
	libGLESv2.so.2 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libGLESv2.so.2
	libGLESv2.so (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libGLESv2.so
	libGLESv1_CM.so.1 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libGLESv1_CM.so.1
	libGLESv1_CM.so (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libGLESv1_CM.so
	libGL.so.1 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libGL.so.1
	libGL.so.1 (libc6) => /usr/lib/i386-linux-gnu/libGL.so.1
	libGL.so (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libGL.so
	libEGL.so.1 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libEGL.so.1
	libEGL.so.1 (libc6) => /usr/lib/i386-linux-gnu/libEGL.so.1
	libEGL.so (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libEGL.so

查看,发现libGL.so并没有指向nvidia的文件,我的电脑上没有安装Nvidia驱动并且没有正确的指向libGL.so。这种情况一般发生在没有用Termial使用apt-get 安装驱动,或者自己从官网上下载deb安装包。重新安装一下nvidia驱动就可
ubuntu-drivers devices
在这里插入图片描述
选择推荐即可
sudo apt-get install nvidia-driver-440
安装后对比
在这里插入图片描述
Nvidia驱动正确的指向libGL.so了
再次执行:sudo docker-compose -f docker-wechat.yaml up
基本上解决闪退问题了。
笔者比较懒,不想每次启动微信都敲这么多代码,所以弄了一个简单的脚本
新建一个.sh文件内容如下

#!/bin/bash
sudo docker-compose -f ~/docker-wechat.yaml up
保存

  • 输入文字不能切换中文问题
    在这里插入图片描述
    一定要确认当前“键盘输入法系统:是fcitx”还是IBus
    修改.yaml文件的配置
    在这里插入图片描述
    注意:这里用小写
### 解决 Ubuntu 18.04微信无法启动的问题 #### 验证 Wine 安装情况 确保 Wine 已经正确安装并且配置无误。可以通过命令 `wine --version` 来验证 Wine 是否正常工作[^1]。 如果 Wine 版本过低或存在其他问题,建议卸载现有版本并通过官方渠道重新安装最新稳定版: ```bash sudo apt-get remove --auto-remove wine sudo dpkg --add-architecture i386 wget -nc https://dl.winehq.org/wine-builds/Release.key sudo apt-key add Release.key sudo apt-add-repository 'https://dl.winehq.org/wine-builds/ubuntu/' sudo apt update sudo apt install --install-recommends winehq-stable ``` #### 检查依赖项 有时缺少某些库文件也会导致应用程序无法启动。尝试更新系统并安装缺失的依赖项: ```bash sudo apt-get update && sudo apt-get upgrade -y sudo apt-get install libfaudio0 winbind ``` #### 修改启动脚本设置语言环境变量 对于部分用户而言,在启动脚本中指定正确的区域设置有助于解决问题。编辑 `/usr/share/applications/deepin-wine-weixin.desktop` 文件,找到 `[Desktop Entry]` 下面的部分,并修改 Exec 行如下所示[^5]: ```ini Exec=env LC_ALL=zh_CN.UTF-8 /opt/deepinwine/apps/Deepin-WeChat/run.sh %f ``` #### 处理图形界面异常 当遇到窗口显示不正常的情况时,比如黑色方块或其他渲染错误,这可能是由于 GPU 加速引起的冲突所致。可以在启动参数里面禁用硬件加速试试看效果如何。创建一个新的快捷方式或者直接编辑现有的 .desktop 文件加入额外选项: ```ini Exec=env WINEPREFIX=~/.deepinwine/Deepin-WeChat deepin-wine6-stable wechat.exe /disable-gpu ``` 以上方法应该能够帮助解决大部分关于 Ubuntu 18.04微信客户端无法启动的问题。若仍然存在问题,则可能需要进一步排查具体原因,例如查看日志文件获取更多信息。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值