出現(xiàn)原因
在ubuntu服務(wù)器上運(yùn)行cv.imshow()方法時(shí)就會(huì)報(bào)以下錯(cuò)誤
qt.qpa.xcb: could not connect to display
qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "/root/anaconda3/lib/python3.8/site-packages/cv2/qt/plugins" even though it was found.
This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.
Available platform plugins are: xcb, eglfs, minimal, minimalegl, offscreen, vnc
解決方法
因?yàn)橛玫氖窃品?wù)器,我也不能去他那里外接個(gè)顯示器,而且我也是沒有裝圖形化界面的,如果有圖形化界面可以使用vnc連接就解決了,我不想裝圖形化界面就打算使用MobaXTerm來使遠(yuǎn)程服務(wù)器的顯示內(nèi)容顯示到本地windows上。
步驟
下載MobaXTerm
MobaXTerm內(nèi)置了X server,在服務(wù)器上的圖形化應(yīng)用可以在本地輕松展示。MobaXTerm下載地址
這里我們下載Portable版本這個(gè)免安裝,下載下來就一個(gè)exe文件。
連接服務(wù)器
打開下載的MobaXTerm,右上角Session->SSH,Remote host輸入服務(wù)器地址,勾選Specify username輸入連接的用戶名,Port輸入端口號(hào),然后在下面Advanced Settings高級(jí)設(shè)置那里勾選X11-forwarding,就是需要X11-forwarding去轉(zhuǎn)發(fā)服務(wù)器顯示內(nèi)容。
安裝Xorg和打開X11-forwarding
連接好服務(wù)器后可以發(fā)現(xiàn)我們的X11-forwarding服務(wù)是沒有打開的
首先我們先安裝Xorg,Xorg是X11的實(shí)現(xiàn),負(fù)責(zé)連接到Xserver進(jìn)行輸入和輸出。
sudo apt-get install xorg
然后我們打開X11-forwarding服務(wù),在命令行輸入
vi /etc/ssh/sshd_config
修改兩個(gè)配置項(xiàng)
X11Forwarding yes
X11UseLocalhost no
之后重啟ssh服務(wù)
service ssh restart
重新連接服務(wù)器后可以發(fā)現(xiàn)支持X11-forwarding了
在命令行輸入xclock測(cè)試能否傳輸GUI界面到本地
xclock
成功!
附錄
如何在Pycharm上面遠(yuǎn)程調(diào)試GUI程序呢?
設(shè)置共享目錄
可參考這篇文章
PyCharm遠(yuǎn)程開發(fā)
修改環(huán)境
在設(shè)置好遠(yuǎn)程開發(fā)后修改環(huán)境信息
在PyCharm中打開Run->Edit Configurations,當(dāng)然也可以在右上角運(yùn)行按鈕旁邊直接點(diǎn)。然后在Environment variables添加DISPLAY變量。
變量值是從服務(wù)器獲取的。在命令行輸入echo $DISPLAY就行。文章來源:http://www.zghlxwxcb.cn/news/detail-427242.html
echo $DISPLAY
文章來源地址http://www.zghlxwxcb.cn/news/detail-427242.html
到了這里,關(guān)于(最新+詳細(xì)+Pycharm遠(yuǎn)程調(diào)試GUI程序)解決qt.qpa.xcb: could not connect to display問題的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!