如何在 ubuntu linux 上配置 go 语言的 qt 开发环境

 更新时间:2020年04月22日 09:03:16   作者:fuhuizn  
这篇文章主要介绍了如何在 ubuntu linux 上配置 go 语言的 qt 开发环境,本文分步骤通过实例代码相结合给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

go语言是开发效率极高、运行速度也接近C程序的现代编程语言,qt是跨平台的优秀gui库,二者结合起来工作表现非常优秀。本文讲的有两个事情,第一个是安装go语言的qt绑定包,第二个是安装go语言的集成开发环境。

安装github.com/therecipe/qt包

本段介绍的是如何安装和配置github.com/therecipe/qt开发包,这是一个非常优秀的qt库的go语言绑定,它非常强大,完美支持QT的信号槽机制,而且它的API完全模仿C++,所以你可以直接参考官方的QT C++文档。

我介绍的配置方法是绑定系统环境的qt库,而不是按照默认安装方式那样使用作者提供的qt库,这样做的好处是编译后的程序占用硬盘比较小,否则最小的程序体积都要超过30M。

第一步、下载github.com/therecipe/qt的源代码

此处假定你已经安装了go编译器,不再介绍怎么安装它了。因为github.com/therecipe/qt这个包必须在GOPATH模式下安装和配置,众所周知我们国内访问github速度实在太慢,所以如果直接用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的开发库

apt命令下载所有的qt开发库,只需要运行下面的命令:

sudo apt-get --no-install-recommends install libqt*5-dev qt*5-dev qml-module-qtquick-* qt*5-doc-html

第三步、编译开发工具套件

只需要运行下面的命令:

go get -v -tags=no_env github.com/therecipe/qt/cmd/...

第四步、编译绑定编辑${HOME}/.bashrc,在其中添加2行:

export QT_PKG_CONFIG=true
#下面的是ubuntu18.04的QT_API版本,如果ubuntu版本不同,你应该自己查看你系统里的qt版本,然后填入相应的版本号
export QT_API=5.9.0

查看qt版本的方法是:运行apt-cache show libqt5core5a,找到你的qt版本号,注意QT_APT版本号的最后一位就写0,不要照抄qt版本号。

  • 运行命令导入.bashrc. .bashrc,或者重新打开终端。
  • 运行安装命令:$(go env GOPATH)/bin/qtsetup。因为qt库是非常庞大的,编译很费时间,请耐心等待,只要成功完成了install这一步就好了,后面的test过程可以直接CTRL-C结束(而且有些测试程序无法编译通过,因为最新版本有少许API发生了变化),不影响使用。

安装liteide集成开发环境

我的体验过vimvscodeliteide三种开发环境,结论是liteide是最好的,为此我还给liteide的作者付了钱,非常感谢作者“七叶”。github上的项目地址是:https://github.com/visualfc/liteide,他的主页是:http://liteide.org/

为什么我说它最好,就因为在使用github.com/therecipe/qt这个开发包的时候它表现得最好,这个包非常庞大,但是使用liteide编程时,自动提示非常迅速,基本没有延迟,然而使用其他两个编辑器的时候,显示提示信息时都有明显的停顿,vim的表现尤其差,这是因为它现在只能使用新的gopls作为提示信息的后台程序,然而它性能非常差。

安装liteide非常简单,我们就从作者提供的下载地址选一个最快的下载,然后解压缩到/opt目录,然后做一个启动器在桌面上就可以用了,具体方法如下:

把下载的压缩包解压缩到/opt

cd /opt
sudo tar xvfz /你的/保存/路径/liteide-xxx.tar.gz

编辑启动器,在桌面建立文件liteide.desktop,然后用编辑器打开,输入下面的内容:

[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

然后赋予它启动权限,在桌面打开终端,输入赋权命令:chmod +x liteide.desktop

到这里本文就结束了,感谢耐心阅读。

到此这篇关于如何在 ubuntu linux 上配置 go 语言的 qt 开发环境的文章就介绍到这了,更多相关 ubuntu go 语言 qt 开发环境内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Go语言学习之golang-jwt/jwt的教程分享

    Go语言学习之golang-jwt/jwt的教程分享

    jwt是 json web token的简称。go使用jwt目前,主流使用的jwt库是golang-jwt/jwt。本文就来和大家讲讲golang-jwt/jwt的具体使用,需要的可以参考一下
    2023-01-01
  • golang中的jwt使用教程流程分析

    golang中的jwt使用教程流程分析

    这篇文章主要介绍了golang中的jwt使用教程,接下来我们需要讲解一下Claims该结构体存储了token字符串的超时时间等信息以及在解析时的Token校验工作,需要的朋友可以参考下
    2023-05-05
  • Go系列教程之反射的用法

    Go系列教程之反射的用法

    这篇文章主要介绍了Go系列教程之反射的用法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-01-01
  • Go Module常用命令及如何使用Go Module

    Go Module常用命令及如何使用Go Module

    go module是go官方自带的go依赖管理库,在1.13版本正式推荐使用,这篇文章主要介绍了Go Module常用命令及如何使用Go Module,需要的朋友可以参考下
    2024-02-02
  • Go实现简单的数据库表转结构体详解

    Go实现简单的数据库表转结构体详解

    这篇文章主要为大家介绍了Go实现简单的数据库表转结构体详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-01-01
  • 使用go xorm来操作mysql的方法实例

    使用go xorm来操作mysql的方法实例

    今天小编就为大家分享一篇关于使用go xorm来操作mysql的方法实例,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-04-04
  • go mock server的简易实现示例

    go mock server的简易实现示例

    这篇文章主要为大家介绍了go mock server的简易实现示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-07-07
  • Golang CSP并发机制及使用模型

    Golang CSP并发机制及使用模型

    这篇文章主要为大家介绍了Golang CSP并发机制及使用模型,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-05-05
  • golang创建文件目录os.Mkdir,os.MkdirAll的区别说明

    golang创建文件目录os.Mkdir,os.MkdirAll的区别说明

    本文主要讲述os.Mkdir、os.MkdirAll区别以及在创建文件目录过程中的一些其他技巧,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-03-03
  • go使用Gin框架利用阿里云实现短信验证码功能

    go使用Gin框架利用阿里云实现短信验证码功能

    这篇文章主要介绍了go使用Gin框架利用阿里云实现短信验证码,使用json配置文件及配置文件解析,编写路由controller层,本文通过代码给大家介绍的非常详细,需要的朋友可以参考下
    2021-08-08

最新评论