WPS也是用qt开发的,用qt开发,主要是可以方便地移植到各种平台,以及嵌入式平台.
也可以用QT来开发,在STM32平台运行的程序.
对于网络编程来说,如果我们基于传统的套接字来开发,会很慢,麻烦,C语言中的网络编程就很麻烦,但是如果基于
QT来开发的话,就会快很多.因为QT给我们做了很多的封装.
QT虽然是一个带有图形界面的嵌入式框架,但是QT并不是仅仅局限于带有图形界面的软件的开发.
像数据库编程,网络编程.等都可以用QT实现.
看一下qt的发展历史.
5.12的版本是最新版,但是5.4.1是比较稳定的.
可以去官网去看看,QT提供了所有版本的下载
我们找到这个5.4.1这个版本,其实5.4.x 的版本他们之间差别不大
如果我们是装的Ubuntu32位的系统的话,可以下载这个
-x86-5.4.1.run这个版本的
如果我们系统是Ubuntu64位的系统的话,我们可以下载这个-x64-5.4.1.run这个版本的QT应用.
还要注意:
如果ubuntu系统安装的是版本1804,或者更新,建议安装新一些的QT的版本,比如5.12 5.11等.
如果自己Ubuntu系统的版本是
1204 1604 1404 可以直接安装QT的,5.4.1这个版本. 我们这里用的是Ubuntu1204的版本.
为什么要关注系统版本和qt的版本关系.
因为QT不同的版本,安装的时候,会依赖操作系统的一些功能,如果操作系统版本和QT版本匹配不起来可能会导致,安装以后会有问题.
可以看到我们已经把
q 这个下载下来了,我下载的这个还是支持Android平台的.其实我们暂时不用Android平台
注意,我们这里是基于Ubuntu1204,然后QT5.4.1,进行开发的.
然后我们执行
ls -l q 来看看
他的权限信息,主要看一下,有没有x,执行权限.
没有的话,去添加执行权限
chmod +x q
添加以后,我们就可以执行
./q 去安装了
下一步
这个目录一般用默认路径就可以, 不要随便改,改了以后可能会有权限的问题导致不能使用.
下一步
这里Android,我们可以先不用选择,因为我们暂时不会开发的程序跑到Android上.
下一步
选择同一协议,然后再点击下一步.
.
然后点击安装.
然后点击安装.
然后安装过程其实就是把文件解压,释放到我们指定的Q这个文件夹下了
安装完成,点击完成
然后会弹出,集成开发环境界面
然后我们在控制台执行
qmake -v 如果显示上面的情况,说明我们还没有配置qt的构建器
QT的构建器.需要我们去配置一下.
我们先看看这个
echo $PATH
可以看到有上面那些变量,里面并没有qt的内容,所以上面的qmake -v这个构建工具自然也找不到这个命令
我们去进入安装目录
cd Q
然后再进入 cd 5.4
然后再进入
cd gcc_64/
注意如果你的系统是32位的话,那么这个目录叫做gcc
然后我们再进入cd bin 目录
然后pwd,获取当前目录,复制下来
然后我们执行
sudo vi /etc/environment 编辑环境变量去
把上面我们复制的qt的,安装目录的bin目录,我们给配置到PATH环境变量中去,注意放到最前面,然后后面用:隔开就可以
然后我们再回到Q这个安装目录
cd ../../..
然后这次我们进入
cd QtCreator/bin/
我们获取这个路径复制下来
然后再去配置环境变量
sudo vi /etc/environment
注意这个是qt的一些工具的,环境变量
我们把刚得到的path,qt工具的path的bin目录,配置在最前面,然后用:隔开
写在PATH的前面,比较好,如果不写在前面的话,如果优先找到了系统中和QT有冲突的路径或者功能的话,就坏了,
可能直接就去找系统的那个功能了,不去找我们QT的了,所以QT的配置最好写在前面吧.
然后为了让配置生效,我们注销一下机器,也可以重启一下也行.
等待注销完毕
我们再执行qmake -v 可以看到出现版本了,说明OK了
注意这里3.0是qmake的版本
然后我们再执行qtcreator
可以看到把集成开发工具弹出来了.
然后我们点击示例,可以看到他提供了很多例子
我们可以选择一个,比如上面那个.
然后点击左上角关闭
然后这里选择默认配置
configure Project
这就来到了这个案例的工程的界面
我们点击左下角的运行
可以看到他的执行效果,可以看到用qt做的程序 ,还是很炫 的.
.
很多的嵌入式设备上,如果要追求,界面比较绚丽,以及性能又好的话,很多都是用qt来实现的.
libstreamer 流媒体库
OpenGL 三维引擎库
上面我们说了qmake qt的这个工具,其实还有很多其他的工具.
上面是常用的.
assistant 这个助手是,我们经常用的,其实就是帮助文档.
英文的帮助文档
我们可以需要什么去搜索
我们可以看到他整理得很不错.左侧,有目录
可以看到有我们要用到的
Qt Network 网络编程.
有Qt SQL qt对数据库的操作.
我们知道,C++ 给我们提供的类库是有限的,
而qt给我们封装了很多的c++类库,这样我们再去编程操作起来就会方便很多
实现一些嵌入式的编程,就会快很多.