如何在 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 开发环境内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Golang实现四层负载均衡的示例代码

    Golang实现四层负载均衡的示例代码

    做开发的同学应该经常听到过负载均衡的概念,今天我们就来实现一个乞丐版的四层负载均衡,并用它对mysql进行负载均衡测试,感兴趣的可以了解一下
    2023-07-07
  • go语言实现mqtt协议的实践

    go语言实现mqtt协议的实践

    MQTT是一个基于客户端-服务器的消息发布/订阅传输协议。本文主要介绍了go语言实现mqtt协议的实践,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-09-09
  • Go语言实现登录验证代码案例

    Go语言实现登录验证代码案例

    这篇文章主要介绍了Go语言实现登录验证代码案例,代码和图文讲解的很清晰,有感兴趣的可以学习下
    2021-03-03
  • go结构体嵌套的切片数组操作

    go结构体嵌套的切片数组操作

    这篇文章主要介绍了go结构体嵌套的切片数组操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-04-04
  • golang通过反射设置结构体变量的值

    golang通过反射设置结构体变量的值

    这篇文章主要介绍了golang通过反射设置结构体变量的值操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-04-04
  • 从入门到精通:Go语言XML数据解析指南

    从入门到精通:Go语言XML数据解析指南

    Go语言的XML包提供了强大的数据解析功能,让你轻松处理各种XML格式的数据,这个指南将带你深入了解如何使用Go语言的XML包,快速上手XML数据解析,准备好开启XML解析之旅了吗?Let's Go!
    2024-03-03
  • Go语言实现优雅关机和重启的示例详解

    Go语言实现优雅关机和重启的示例详解

    优雅的关机是指在关闭服务之前,先让服务处理完当前正在处理的请求,然后再关闭服务,本文主要为大家详细介绍了如何使用Go语言实现优雅关机和重启,感兴趣的小伙伴可以参考一下
    2025-04-04
  • 深入解析Go语言中上下文超时与子进程管理

    深入解析Go语言中上下文超时与子进程管理

    这篇文章小编将通过一个实际问题的案例,和大家深入探讨一下Go语言中的上下文超时和子进程管理,感兴趣的小伙伴可以跟随小编一起学习一下
    2023-10-10
  • Go 数据结构之二叉树详情

    Go 数据结构之二叉树详情

    这篇文章主要介绍了 Go 数据结构之二叉树详情,二叉树是一种数据结构,在每个节点下面最多存在两个其他节点。即一个节点要么连接至一个、两个节点或不连接其他节点,下文基于GO语言展开二叉树结构详情,需要的朋友可以参考一下
    2022-05-05
  • GO语言实现AES-CFB加密的操作方法

    GO语言实现AES-CFB加密的操作方法

    本文介绍了如何用Go语言实现AES-CFB加密和解密,首先,定义一个属于encrypt包的文件,使用AES算法、CFB模式和Base64编码等功能,在加密函数中,接收明文和密钥,生成一个AES块密码和一个随机的初始化向量,实现明文的加密
    2024-10-10

最新评论