8.6 QQ(Linux 版)

基于 Rocky Linux(FreeBSD Port)

QQ 是一款在中国大陆广泛使用的即时通讯软件。由于目前缺乏原生的 FreeBSD 版本,需要通过 Linux 兼容层(Linux Compatibility Layer)来实现安装与运行。本节将介绍基于不同 Linux 兼容层安装 QQ 的具体方法。

注意

请先参照本书其他章节安装 Rocky Linux 兼容层(FreeBSD Port)。

安装 rpm 工具

  • 使用 pkg 安装

# pkg install rpm4
  • 或者使用 Ports 安装:

# cd /usr/ports/archivers/rpm4/ 
# make install clean

下载安装 QQ

# fetch https://dldir1.qq.com/qqfile/qq/QQNT/Linux/QQ_3.2.17_250521_x86_64_01.rpm # 文章撰写时的链接,实际使用请获取最新版本
  • 安装 QQ:

root@ykla:/ # cd /compat/linux/	# 切换到兼容层路径
root@ykla:/compat/linux # rpm2cpio < /home/ykla/QQ_3.2.17_250521_x86_64_01.rpm | cpio -id # 安装 QQ。读者请注意将 QQ 文件路径改为读者本地的路径
./usr/share/icons/hicolor/512x512/apps/qq.png: Cannot extract through symlink usr/share/icons/hicolor/512x512/apps/qq.png
1055863 blocks

解决依赖库

  • 查看依赖:

可以看到 ldd 正常,无需解决依赖问题。

解决 fcitx 中文输入法在 QQ 中不能使用的问题

  • 在兼容层中安装 ibus-gtk3ibus-libs,下载安装包后执行:

  • 接下来:

启动 QQ

在 Linux 兼容环境中启动 QQ,禁用沙箱并启用进程内 GPU:

注意

此处请务必以普通用户权限运行 QQ,否则可能无法使用输入法。

技巧

--no-sandbox 选项是关闭沙盒。否则无法运行 QQ。

--in-process-gpu 选项也是必要的,否则退出 QQ 后可能无法重新打开,需要重启系统才能使用。

FreeBSD QQ

fcitx5 输入法正常:

FreeBSD QQ

基于 Arch Linux 兼容层

请参阅本书中“Linux 兼容层 - Arch Linux 兼容层”部分

请新开一个终端,输入 reboot 重启 FreeBSD,否则新设置的密码可能无法生效。

启动 QQ 客户端,禁用沙箱并启用进程内 GPU:

注意

此处必须以 root 权限运行 QQ,否则可能报错找不到 X11。

FreeBSD QQ
FreeBSD QQ

基于 Ubuntu 兼容层

请先构建 Ubuntu 兼容层环境。

安装依赖文件:

启动 QQ:

注意

此处必须以 root 用户运行 QQ,并确保按照 Ubuntu 兼容层构建教程设置中文字符集(使用脚本时,该过程会自动完成,无需手动操作)。

FreeBSD QQ

故障排除

网络错误

如果系统中有多张网卡,例如一块有线网卡和一块无线网卡,打开 QQ 后可能会出现网络错误提示,此时需要为空闲网卡随机分配一个 IP。

参见《Linux 兼容层故障排除与未竟事宜》

中文输入法

注意

不应在兼容层内部安装输入法,因为此操作不会生效。

若你自行构建兼容层,可能需要在启动 QQ 前在兼容层内部设定以下中文环境变量(如果完全按照本书教程操作则无需此步骤,因为本书中 Fcitx 已指定以下环境变量):

设置完成后可以使用 locale 命令检查。对于兼容层的软件,Fcitx 输入法只有在上述两个变量设置为中文环境时才会生效。

如设置失败,请重启 FreeBSD 系统。

QQ 闪退

在兼容层中执行以下操作:

参考文献

课后习题

  1. 选择两种不同的 Linux 兼容层(如 Rocky Linux 和 Arch Linux)分别安装 QQ,对比两种兼容层下的安装流程、依赖处理和最终运行效果。

  2. 测试 QQ 在不同用户权限(root 和普通用户)下的运行情况,验证输入法可用性和网络连接状态。

  3. 修改 QQ 的启动参数,移除或添加某些选项后观察其行为变化。

最后更新于