下载软件
很多年以前腾讯开发了一款linux版本的qq,后来…就因为版本过登录不上了.好在去年腾讯又开发了2.0版本的linux qq,官网上直接下载就ok.
wget http://175.6.13.186/dlied1.qq.com/qqweb/LinuxQQ_1/linuxqq_2.0.0-b2-1082_x86_64.rpm
使用rpm安装
[root@localhost ~]# rpm -ivh linuxqq_2.0.0-b2-1082_x86_64.rpm
错误:依赖检测失败:libX11.so.6()(64bit) 被 linuxqq-2.0.0-b2.x86_64 需要libcairo.so.2()(64bit) 被 linuxqq-2.0.0-b2.x86_64 需要libgdk-x11-2.0.so.0()(64bit) 被 linuxqq-2.0.0-b2.x86_64 需要libgdk_pixbuf-2.0.so.0()(64bit) 被 linuxqq-2.0.0-b2.x86_64 需要libgtk-x11-2.0.so.0()(64bit) 被 linuxqq-2.0.0-b2.x86_64 需要libpango-1.0.so.0()(64bit) 被 linuxqq-2.0.0-b2.x86_64 需要libpangocairo-1.0.so.0()(64bit) 被 linuxqq-2.0.0-b2.x86_64 需要
参数
-i : install 安装
-v : 详细信息
-h : 显示进度条
问题
- 上述 输出结果中,显示依赖问题,依赖的意思就是说:我安装A文件,需要先安装B文件;结合上述的输出:要安装linuxqq,咱们得先安装libX11等一系列依赖的文件
解决
- 使用yum来安装解决依赖问题,先查找依赖的文件是由哪个包提供的
[root@localhost ~]# yum provides libX11.so.6\(\)\(64bit\)
已加载插件:fastestmirror, langpacks
Determining fastest mirrors* base: mirrors.cn99.com* extras: mirrors.aliyun.com* updates: mirrors.cn99.com
base | 3.6 kB 00:00:00
extras | 2.9 kB 00:00:00
updates | 2.9 kB 00:00:00
(1/4): extras/7/x86_64/primary_db | 165 kB 00:00:00
(2/4): base/7/x86_64/group_gz | 165 kB 00:00:00
(3/4): base/7/x86_64/primary_db | 6.0 MB 00:00:02
(4/4): updates/7/x86_64/primary_db | 7.6 MB 00:00:03
libX11-1.6.7-2.el7.x86_64 : Core X11 protocol client library
源 :base
匹配来源:
提供 :libX11.so.6()(64bit)
- 使用yum安装找到的包
[root@localhost ~]# yum install libX11-1.6.7-2.el7.x86_64 -y
- 然后使用
rpm -ivh
命令安装,看看剩余的依赖文件
[root@localhost ~]# rpm -ivh linuxqq_2.0.0-b2-1082_x86_64.rpm
错误:依赖检测失败:libcairo.so.2()(64bit) 被 linuxqq-2.0.0-b2.x86_64 需要libgdk-x11-2.0.so.0()(64bit) 被 linuxqq-2.0.0-b2.x86_64 需要libgdk_pixbuf-2.0.so.0()(64bit) 被 linuxqq-2.0.0-b2.x86_64 需要libgtk-x11-2.0.so.0()(64bit) 被 linuxqq-2.0.0-b2.x86_64 需要libpango-1.0.so.0()(64bit) 被 linuxqq-2.0.0-b2.x86_64 需要libpangocairo-1.0.so.0()(64bit) 被 linuxqq-2.0.0-b2.x86_64 需要
可以看到之前依赖的libx11文件已经没有了
以此类推,将所有的依赖文件都安装上
运行linux qq
- 首先要找linux qq的执行文件
[root@localhost ~]# rpm -qa | grep -i qq
linuxqq-2.0.0-b2.x86_64
[root@localhost ~]# rpm -ql linuxqq-2.0.0-b2.x86_64
/usr/local/bin
/usr/local/bin/crashpad_handler
/usr/local/bin/qq #执行文件
/usr/local/lib/tencent-qq
/usr/local/share/tencent-qq
/usr/local/share/tencent-qq/CHANGELOG.txt
/usr/local/share/tencent-qq/credits.html
/usr/local/share/tencent-qq/qq.png
/usr/local/share/tencent-qq/res.db
/usr/share/applications/qq.desktop
参数详解
-qa: 查询系统所有已经安装的rpm包
-ql: 查询linuxqq软件包在系统中安装了哪些文件,方便找到执行文件
- 运行qq
[root@localhost ~]# qq
[{04-27/14:54:27.042403}:INFO:main.cpp(120)] ******************************************************************
[{04-27/14:54:27.042625}:INFO:main.cpp(121)] ** QQ for Linux v2.0.0-b2(2.0.0.1082), appid = 537064202
[{04-27/14:54:27.042642}:INFO:main.cpp(122)] ** Copyright (C) 1998 - 2019 Tencent Inc. All Rights Reserved
[{04-27/14:54:27.042652}:INFO:main.cpp(123)] ******************************************************************
[{04-27/14:54:27.042661}:INFO:main.cpp(260)] ======================cmdline:qq======================
只有上述文字输出,没有任何登录窗口出现,也没有任何error信息
- 解决问题
根据我多年的经验,我执行了下面的一条命令
export DISPLAY=172.18.0.75:0.0 # 172.18.0.75是我windows的ip地址,这条命令的是用来告诉linux将qq的界面输出到我windows的桌面,通过这个ip的0.0窗口
- 再次运行qq,得到如下界面,乱…码
- 再次解决,乱码是因为系统中少了部分中文语言包
yum groupinstall fonts
- 关掉之前的qq,再次运行,如下
可以直接扫码登录了
其实这里有一个巨大的坑,因为安装linux qq其实只要一步就可以,如下
yum install linuxqq_2.0.0-b2-1082_x86_64.rpm
yum本来就是解决依赖关系的,所以在安装本地linuxqq软件过程中产生的依赖问题,yum会自动解决,也就不需要像我们上面那样一步一步的去安装!
卸载
- 方法一:使用rpm
[root@localhost ~]# rpm -qa | grep -i qq
linuxqq-2.0.0-b2.x86_64
[root@localhost ~]# rpm -e linuxqq-2.0.0-b2.x86_64
参数详解
-e :表示卸载
- 方法二:使用yum
yum remove linuxqq-2.0.0-b2.x86_64