作者 | 三級(jí)狗
譯者 | 彎月,責(zé)編 | Elle
11月8號(hào)的時(shí)候,騰訊禁止了舊版的QQ客戶(hù)端再登錄,導(dǎo)致Linux下Wine版的QQ也受到牽連無(wú)法再使用。慶幸的是8號(hào)當(dāng)天,深度就在各個(gè)源發(fā)布了全新版本給鳳毛麟角的Linux用戶(hù)續(xù)命。
因?yàn)槲移綍r(shí)工作環(huán)境是Linux,所以使用QQ是個(gè)剛需,終于在折騰了好幾天之后解決了所有問(wèn)題,在Ubuntu下用上了功能堪比Windows原版的QQ。因而寫(xiě)下這篇文章記錄一下踩坑的過(guò)程,幫助其他奮戰(zhàn)在Linux端的小伙伴避免折騰。
這次安裝軟件的并非官方的版本,而是在x86 Ubuntu上基于wine安裝的QQ和微信。
2008年出現(xiàn)了一種名為wine的技術(shù),這種技術(shù)在Linux平臺(tái)實(shí)現(xiàn)了部分Windows的系統(tǒng)API和庫(kù),讓用戶(hù)可以在Linux端無(wú)縫使用Windows端的應(yīng)用程序。
后來(lái)國(guó)內(nèi)深度社區(qū)將wine做了很好的封裝并且在wine上移植了諸多windows端的軟件。包括QQ、微信等等,而且在功能上幾乎都可以和windows原版分庭抗禮,給廣大Linux桌面版用戶(hù)提供了極大地便利。
2019年11月8日舊版的QQ被停止使用,也是同一天,深度就發(fā)布了新的Wine版QQ提供支持。在國(guó)內(nèi)的阿里源、清華源等鏡像源中也可以下載到最新版本。
不過(guò)因?yàn)榕f版的無(wú)法使用,新版本的安裝使用出現(xiàn)各種問(wèn)題,業(yè)內(nèi)社區(qū)一時(shí)哀聲載道。
因此本文將剛剛安裝的Linux版QQ、微信以及踩坑過(guò)程記錄下來(lái)。希望其他玩Linux小伙伴們看到后避免踩坑!
不過(guò)在Wine下騰訊舊版的微信、QQTim版和輕聊版仍然能正常使用,懶得折騰的同學(xué)可以繼續(xù)使用Tim版或輕聊版,如舊版停止服務(wù)可按照此教程安裝新版軟件使用。
安裝過(guò)程
注意:如果過(guò)程中出現(xiàn)軟件包依賴(lài)問(wèn)題時(shí)請(qǐng)謹(jǐn)慎操作,除非非常確定,否則不要使用sudo apt-get install -fy和sudo apt autoremove -y,-y參數(shù)不經(jīng)過(guò)問(wèn)詢(xún)很可能被卸載桌面。
一、下載安裝最新的deepin-wine環(huán)境庫(kù)
mkdir -p ~/temp && cd ~/temp
# 下載環(huán)境庫(kù)的包
wget http://mirrors.aliyun.com/deepin/pool/non-free/d/deepin-wine/deepin-wine_2.18-18_all.deb
wget http://mirrors.aliyun.com/deepin/pool/non-free/d/deepin-wine/deepin-wine32_2.18-18_i386.deb
wget http://mirrors.aliyun.com/deepin/pool/non-free/d/deepin-wine/deepin-wine32-preloader_2.18-18_i386.deb
wget http://mirrors.aliyun.com/deepin/pool/non-free/d/deepin-wine-helper/deepin-wine-helper_1.2deepin8_i386.deb
wget http://mirrors.aliyun.com/deepin/pool/non-free/d/deepin-wine-plugin/deepin-wine-plugin_1.0deepin2_amd64.deb
wget http://mirrors.aliyun.com/deepin/pool/non-free/d/deepin-wine-plugin/deepin-wine-plugin_1.0deepin2_i386.deb
wget http://mirrors.aliyun.com/deepin/pool/non-free/d/deepin-wine-plugin-virtual/deepin-wine-plugin-virtual_1.0deepin3_all.deb
wget http://mirrors.aliyun.com/deepin/pool/non-free/d/deepin-wine-uninstaller/deepin-wine-uninstaller_0.1deepin2_i386.deb
wget http://mirrors.aliyun.com/deepin/pool/non-free/u/udis86/udis86_1.72-2_i386.deb
wget http://mirrors.aliyun.com/deepin/pool/non-free/d/deepin-wine/deepin-fonts-wine_2.18-18_all.deb
wget http://mirrors.aliyun.com/deepin/pool/non-free/d/deepin-wine/deepin-libwine_2.18-18_i386.deb
wget https://mirrors.aliyun.com/deepin/pool/main/libj/libjpeg-turbo/libjpeg62-turbo_1.5.1-2_amd64.deb
wget https://mirrors.aliyun.com/deepin/pool/main/libj/libjpeg-turbo/libjpeg62-turbo_1.5.1-2_i386.deb
wget http://mirrors.aliyun.com/deepin/pool/non-free/d/deepin-wine/deepin-libwine-dbg_2.18-18_i386.deb
wget http://mirrors.aliyun.com/deepin/pool/non-free/d/deepin-wine/deepin-libwine-dev_2.18-18_i386.deb
wget http://mirrors.aliyun.com/deepin/pool/non-free/d/deepin-wine/deepin-wine-binfmt_2.18-18_all.deb
# '添加32位支持'
sudo dpkg --add-architecture i386
# '刷新apt緩存信息...'
sudo apt update
# '開(kāi)始安裝...'
sudo dpkg -i *.deb
# 出現(xiàn)依賴(lài)報(bào)錯(cuò)執(zhí)行:sudo apt-get install -f 參加下文中的踩坑部分
二、下載安裝最新版Wine QQ 微信
其他什么QQ瀏覽器迅雷等windows端軟件都有,可以在http://mirrors.aliyun.com/deepin/pool/non-free/d/找自己需要的。
wget http://mirrors.aliyun.com/deepin/pool/non-free/d/deepin.com.qq.im/deepin.com.qq.im_9.1.8deepin0_i386.deb
wget http://mirrors.aliyun.com/deepin/pool/non-free/d/deepin.com.wechat/deepin.com.wechat_2.6.8.65deepin0_i386.deb
sudo dpkg -i deepin.com.qq.im_9.1.8deepin0_i386.deb
sudo dpkg -i deepin.com.wechat_2.6.8.65deepin0_i386.deb
# 安裝完成后在Applications中找到對(duì)應(yīng)圖標(biāo)即可運(yùn)行。
踩坑
順利的話,只需要上面很簡(jiǎn)單的兩步,就可以完成。然而現(xiàn)實(shí)并不總是這么順利。
1、安裝deepin-wine包依賴(lài)問(wèn)題(上文步驟一)
之前裝過(guò)wine的小伙伴,此次升級(jí)安裝基本不會(huì)有什么坑。然而對(duì)于首次安裝的小伙伴,安裝這些包會(huì)缺很多系統(tǒng)依賴(lài)。
如果報(bào)錯(cuò)依賴(lài)缺失,解決方案是:執(zhí)行sudo apt-get install -f進(jìn)行修復(fù),千萬(wàn)不要加-y參數(shù)。
2、安裝QQ包依賴(lài)問(wèn)題(上文步驟二)
dpkg: 依賴(lài)關(guān)系問(wèn)題使得 deepin.com.qq.im:i386 的配置工作不能繼續(xù):
deepin.com.qq.im:i386 依賴(lài)于 deepin-wine-helper (>= 1.2deepin2);然而:
系統(tǒng)中 deepin-wine-helper:i386 的版本為 1.2deepin0。
dpkg: 處理軟件包 deepin.com.qq.im:i386 (--install)時(shí)出錯(cuò):
依賴(lài)關(guān)系問(wèn)題 - 仍未被配置
論壇上提的最多的就是這個(gè)問(wèn)題,安裝新版QQ或微信時(shí)報(bào)這個(gè)錯(cuò)誤。解決方案其實(shí)很簡(jiǎn)單:執(zhí)行上文的步驟一就可以。
新版的QQ依賴(lài)的是新版的deepin-wine庫(kù),只要把步驟一安裝完更新到最新就可以。
3、安裝完成后點(diǎn)擊圖標(biāo)無(wú)法啟動(dòng)
這個(gè)問(wèn)題,讓我前前后后放棄了好幾次。
在我執(zhí)行完步驟一、二沒(méi)有任何報(bào)錯(cuò)以后,在Applications中找到對(duì)應(yīng)圖標(biāo)點(diǎn)擊,然而軟件閃爍一會(huì)兒后退出,無(wú)法打開(kāi)程序。
先說(shuō)解決方案:
這個(gè)問(wèn)題的排查過(guò)程十分糟心,我新建了一個(gè)ubuntu16.04的虛擬機(jī),執(zhí)行完這套操作軟件完全正常運(yùn)行,然而我本地機(jī)器死活不可以。始終找不到問(wèn)題出在哪兒。
后來(lái)沒(méi)辦法找到了圖標(biāo)的文件:/usr/share/applications/deepin.com.qq.im.desktop
手動(dòng)執(zhí)行文件里的Exec的命令:/opt/deepinwine/apps/Deepin-QQ/run.sh -u %u
結(jié)果得到了報(bào)錯(cuò):
wine: cannot find"C:Program FilesTencentQQBinQQ.exe"
然而在我的虛擬機(jī)的ubuntu下并沒(méi)有這個(gè)錯(cuò)誤。
問(wèn)題定位到這兒一籌莫展,始終不明白我的電腦里為什么不存在這個(gè)文件,也不知道該怎么修復(fù)。
我得想辦法知道這個(gè)Windows的虛擬路徑存在Linux系統(tǒng)中的什么位置。然而一直都沒(méi)有找到。
直到后來(lái)功夫不負(fù)有心人,偶然的機(jī)會(huì)在deepin官網(wǎng)的論壇中看到:
這一下子讓我看到了希望,我進(jìn)入到系統(tǒng)里~/.deepinwine/Deepin-QQ/driver_c/路徑下,看到了Program Files和Windows目錄。我就知道來(lái)對(duì)地方了!
果然,這兩個(gè)目錄下只有一些空文件夾。顯然這里的文件應(yīng)該在第一次啟動(dòng)QQ的時(shí)候就釋放到這里來(lái),不知什么原因它沒(méi)有成功。
不過(guò)分析到這里原因已經(jīng)不重要了,既然我虛擬機(jī)下有一個(gè)可用的,直接照搬復(fù)制過(guò)來(lái)就OK。
于是我把虛擬機(jī)里~/.deepinwine/Deepin-QQ/driver_c/Deepin-QQ和~/.deepinwine/Deepin-QQ/driver_c/Deepin-WeChat兩個(gè)文件夾原封不動(dòng)的搬到了我的系統(tǒng)下!
運(yùn)行程序:
看到界面的那一刻,真想哇的一聲哭出來(lái)。自從8號(hào)早上QQ不能用后,這個(gè)問(wèn)題困擾的我連覺(jué)都睡不好,倒不是說(shuō)非得用QQ不可,而是遇到一個(gè)技術(shù)坑踩不過(guò)去賊煩心!
上面提到的那個(gè)壓縮包,其實(shí)就是我的虛擬機(jī)下的這兩個(gè)目錄。不出意外的話,安裝新包過(guò)程無(wú)論失敗與否,你把這個(gè)包解壓到本地都能運(yùn)行個(gè)八九不離十。
原諒我不要臉的扔在CSDN上蹭點(diǎn)積分,主要我平時(shí)也對(duì)這個(gè)需求比較大。
當(dāng)然,如果你本地遇到這個(gè)問(wèn)題,也可以自己搞個(gè)虛擬機(jī)鼓搗出一版可用的,然后把文件拿出來(lái)放到本地就行!
后記
以上就是整個(gè)QQ微信在Linux上安裝的全部踩坑過(guò)程。最大的坑有三個(gè):
軟件運(yùn)行后還有很多BUG,不過(guò)基本都是深度和Wine還有QQ的事情了,我們用戶(hù)可操作掌控的空間很小。
以上操作可以寫(xiě)一個(gè)腳本一鍵搞定,但是沒(méi)什么技術(shù)含量我懶得搞了,另外寫(xiě)腳本里如果出現(xiàn)-f -y這種強(qiáng)制不可控參數(shù),一不小心卸載了桌面,反而會(huì)給大家造成更大的麻煩。
鳴謝
聯(lián)系客服