如何在 ubuntu linux 上配置 go 語言的 qt 開發(fā)環(huán)境
go語言是開發(fā)效率極高、運(yùn)行速度也接近C程序的現(xiàn)代編程語言,qt是跨平臺的優(yōu)秀gui庫,二者結(jié)合起來工作表現(xiàn)非常優(yōu)秀。本文講的有兩個事情,第一個是安裝go語言的qt綁定包,第二個是安裝go語言的集成開發(fā)環(huán)境。
安裝github.com/therecipe/qt包
本段介紹的是如何安裝和配置github.com/therecipe/qt開發(fā)包,這是一個非常優(yōu)秀的qt庫的go語言綁定,它非常強(qiáng)大,完美支持QT的信號槽機(jī)制,而且它的API完全模仿C++,所以你可以直接參考官方的QT C++文檔。
我介紹的配置方法是綁定系統(tǒng)環(huán)境的qt庫,而不是按照默認(rèn)安裝方式那樣使用作者提供的qt庫,這樣做的好處是編譯后的程序占用硬盤比較小,否則最小的程序體積都要超過30M。
第一步、下載github.com/therecipe/qt的源代碼
此處假定你已經(jīng)安裝了go編譯器,不再介紹怎么安裝它了。因?yàn)?code>github.com/therecipe/qt這個包必須在GOPATH模式下安裝和配置,眾所周知我們國內(nèi)訪問github速度實(shí)在太慢,所以如果直接用go get命令自動下載安裝基本是行不通的。我用碼云帳號fork了這個包,所以我們可以從這個地址用git clone命令下載:https://gitee.com/rocket049/qt。具體操作如下:
git mkdir -p $(go env GOPATH)/src/github.com/therecipe cd $(go env GOPATH)/src/github.com/therecipe git clone --depth 1 https://gitee.com/rocket049/qt
第二步、在ubuntu中安裝qt的開發(fā)庫
用apt命令下載所有的qt開發(fā)庫,只需要運(yùn)行下面的命令:
sudo apt-get --no-install-recommends install libqt*5-dev qt*5-dev qml-module-qtquick-* qt*5-doc-html
第三步、編譯開發(fā)工具套件
只需要運(yùn)行下面的命令:
go get -v -tags=no_env github.com/therecipe/qt/cmd/...
第四步、編譯綁定編輯${HOME}/.bashrc,在其中添加2行:
export QT_PKG_CONFIG=true
#下面的是ubuntu18.04的QT_API版本,如果ubuntu版本不同,你應(yīng)該自己查看你系統(tǒng)里的qt版本,然后填入相應(yīng)的版本號
export QT_API=5.9.0
查看qt版本的方法是:運(yùn)行apt-cache show libqt5core5a,找到你的qt版本號,注意QT_APT版本號的最后一位就寫0,不要照抄qt版本號。
- 運(yùn)行命令導(dǎo)入
.bashrc:. .bashrc,或者重新打開終端。 - 運(yùn)行安裝命令:
$(go env GOPATH)/bin/qtsetup。因?yàn)?code>qt庫是非常龐大的,編譯很費(fèi)時間,請耐心等待,只要成功完成了install這一步就好了,后面的test過程可以直接CTRL-C結(jié)束(而且有些測試程序無法編譯通過,因?yàn)樽钚掳姹居猩僭SAPI發(fā)生了變化),不影響使用。
安裝liteide集成開發(fā)環(huán)境
我的體驗(yàn)過vim、vscode、liteide三種開發(fā)環(huán)境,結(jié)論是liteide是最好的,為此我還給liteide的作者付了錢,非常感謝作者“七葉”。github上的項(xiàng)目地址是:https://github.com/visualfc/liteide,他的主頁是:http://liteide.org/。
為什么我說它最好,就因?yàn)樵谑褂?code>github.com/therecipe/qt這個開發(fā)包的時候它表現(xiàn)得最好,這個包非常龐大,但是使用liteide編程時,自動提示非常迅速,基本沒有延遲,然而使用其他兩個編輯器的時候,顯示提示信息時都有明顯的停頓,vim的表現(xiàn)尤其差,這是因?yàn)樗F(xiàn)在只能使用新的gopls作為提示信息的后臺程序,然而它性能非常差。
安裝liteide非常簡單,我們就從作者提供的下載地址選一個最快的下載,然后解壓縮到/opt目錄,然后做一個啟動器在桌面上就可以用了,具體方法如下:
把下載的壓縮包解壓縮到/opt
cd /opt
sudo tar xvfz /你的/保存/路徑/liteide-xxx.tar.gz
編輯啟動器,在桌面建立文件liteide.desktop,然后用編輯器打開,輸入下面的內(nèi)容:
[Desktop Entry] Version=1.0 Type=Application Terminal=false Icon=/opt/liteide/share/liteide/welcome/images/liteide128.xpm Exec=/opt/liteide/bin/liteide Name=Liteide Comment=Lite ide
然后賦予它啟動權(quán)限,在桌面打開終端,輸入賦權(quán)命令:chmod +x liteide.desktop
到這里本文就結(jié)束了,感謝耐心閱讀。
到此這篇關(guān)于如何在 ubuntu linux 上配置 go 語言的 qt 開發(fā)環(huán)境的文章就介紹到這了,更多相關(guān) ubuntu go 語言 qt 開發(fā)環(huán)境內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Golang實(shí)現(xiàn)四層負(fù)載均衡的示例代碼
做開發(fā)的同學(xué)應(yīng)該經(jīng)常聽到過負(fù)載均衡的概念,今天我們就來實(shí)現(xiàn)一個乞丐版的四層負(fù)載均衡,并用它對mysql進(jìn)行負(fù)載均衡測試,感興趣的可以了解一下2023-07-07
go語言實(shí)現(xiàn)mqtt協(xié)議的實(shí)踐
MQTT是一個基于客戶端-服務(wù)器的消息發(fā)布/訂閱傳輸協(xié)議。本文主要介紹了go語言實(shí)現(xiàn)mqtt協(xié)議的實(shí)踐,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-09-09
Go語言實(shí)現(xiàn)登錄驗(yàn)證代碼案例
這篇文章主要介紹了Go語言實(shí)現(xiàn)登錄驗(yàn)證代碼案例,代碼和圖文講解的很清晰,有感興趣的可以學(xué)習(xí)下2021-03-03
golang通過反射設(shè)置結(jié)構(gòu)體變量的值
這篇文章主要介紹了golang通過反射設(shè)置結(jié)構(gòu)體變量的值操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2021-04-04
Go語言實(shí)現(xiàn)優(yōu)雅關(guān)機(jī)和重啟的示例詳解
優(yōu)雅的關(guān)機(jī)是指在關(guān)閉服務(wù)之前,先讓服務(wù)處理完當(dāng)前正在處理的請求,然后再關(guān)閉服務(wù),本文主要為大家詳細(xì)介紹了如何使用Go語言實(shí)現(xiàn)優(yōu)雅關(guān)機(jī)和重啟,感興趣的小伙伴可以參考一下2025-04-04
Go?數(shù)據(jù)結(jié)構(gòu)之二叉樹詳情
這篇文章主要介紹了?Go?數(shù)據(jù)結(jié)構(gòu)之二叉樹詳情,二叉樹是一種數(shù)據(jù)結(jié)構(gòu),在每個節(jié)點(diǎn)下面最多存在兩個其他節(jié)點(diǎn)。即一個節(jié)點(diǎn)要么連接至一個、兩個節(jié)點(diǎn)或不連接其他節(jié)點(diǎn),下文基于GO語言展開二叉樹結(jié)構(gòu)詳情,需要的朋友可以參考一下2022-05-05
GO語言實(shí)現(xiàn)AES-CFB加密的操作方法
本文介紹了如何用Go語言實(shí)現(xiàn)AES-CFB加密和解密,首先,定義一個屬于encrypt包的文件,使用AES算法、CFB模式和Base64編碼等功能,在加密函數(shù)中,接收明文和密鑰,生成一個AES塊密碼和一個隨機(jī)的初始化向量,實(shí)現(xiàn)明文的加密2024-10-10

