脚本之家,脚本语言编程技术及教程分享平台!
分类导航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服务器之家 - 脚本之家 - Golang - 如何在 ubuntu linux 上配置 go 语言的 qt 开发环境

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

2020-06-09 10:56fuhuizn Golang

这篇文章主要介绍了如何在 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。具体操作如下:

?
1
2
3
4
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,然后用编辑器打开,输入下面的内容:

?
1
2
3
4
5
6
7
8
[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 开发环境内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://studygolang.com/articles/28086

延伸 · 阅读

精彩推荐
  • GolangGolang中Bit数组的实现方式

    Golang中Bit数组的实现方式

    这篇文章主要介绍了Golang中Bit数组的实现方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...

    天易独尊11682021-06-09
  • Golanggolang如何使用struct的tag属性的详细介绍

    golang如何使用struct的tag属性的详细介绍

    这篇文章主要介绍了golang如何使用struct的tag属性的详细介绍,从例子说起,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看...

    Go语言中文网11352020-05-21
  • Golanggo日志系统logrus显示文件和行号的操作

    go日志系统logrus显示文件和行号的操作

    这篇文章主要介绍了go日志系统logrus显示文件和行号的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...

    SmallQinYan12302021-02-02
  • GolangGolang通脉之数据类型详情

    Golang通脉之数据类型详情

    这篇文章主要介绍了Golang通脉之数据类型,在编程语言中标识符就是定义的具有某种意义的词,比如变量名、常量名、函数名等等,Go语言中标识符允许由...

    4272021-11-24
  • Golanggo语言制作端口扫描器

    go语言制作端口扫描器

    本文给大家分享的是使用go语言编写的TCP端口扫描器,可以选择IP范围,扫描的端口,以及多线程,有需要的小伙伴可以参考下。 ...

    脚本之家3642020-04-25
  • Golanggolang的httpserver优雅重启方法详解

    golang的httpserver优雅重启方法详解

    这篇文章主要给大家介绍了关于golang的httpserver优雅重启的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,...

    helight2992020-05-14
  • Golanggolang json.Marshal 特殊html字符被转义的解决方法

    golang json.Marshal 特殊html字符被转义的解决方法

    今天小编就为大家分享一篇golang json.Marshal 特殊html字符被转义的解决方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧 ...

    李浩的life12792020-05-27
  • Golanggolang 通过ssh代理连接mysql的操作

    golang 通过ssh代理连接mysql的操作

    这篇文章主要介绍了golang 通过ssh代理连接mysql的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...

    a165861639710342021-03-08