本章将主要介绍一下Qt和LubanCat-RK系列板卡,以及如何在板卡上开发。
1.1. Qt简介¶1.1.1. Qt框架¶Qt官网的一句话: One framework. One codebase. Any platform ,很好的概括了什么是Qt。
Qt是一个跨平台的 C++ 开发库,旨在简化桌面、嵌入式和移动平台的应用程序和用户界面的创建等,并支持C++,Python,QML,Javascript等多种语言,适合多种技术、开发方式。
Qt经常被当做一个GUI库,用来开发图形界面应用程序,但Qt除了可以绘制漂亮的界面外,还包含很多其它功能,比如数据库、多线程、图像处理、音视频处理、网络通信、文件操作等等。
1.1.2. Qt发展¶Qt最早是1991年由挪威的Eirik Chambe-Eng和Haavard Nord开发的,1994年3月4日成立奇趣科技公司(Trolltech);
2000年奇趣科技公司为开源社区发布了遵循 GPL(GNU General Public License)许可证的开源版本;
2008年诺基亚公司收购了奇趣科技公司,并增加了 LGPL(GNU Lesser General Public License)的授权模式;
2011年3月Qt 商业授权业务出售给了芬兰IT服务公司Digia;
Digia于2014 年 9 月宣布成立 Qt Company 全资子公司,独立运营Qt商业授权业务。
等…
经过多年的发展,市面上也有很多基于Qt开发的应用程序:WPS、YY语音、豆瓣电台、虾米音乐、Autodesk Maya、Autodesk 3ds Max、K Desktop Environment(KDE)、Photoshop等等。
1.1.3. 为什么选择Qt¶跨平台特性 使用Qt开发的软件只需要做很少的适配甚至根本不需要修改任何源代码,就可以在大多数的平台上(桌面端、移动端、嵌入式设备、微控制器)运行。
授权 Qt支持商业许可证和开源许可证,对于社区开发以及商业开发都非常友好。
应用程序开发的一站式解决方案 ,优秀的框架,丰富的API,拥有大量的开发文档帮助文档,开发工具,支持多语言等等。
1.2. Qt工具和下载¶Qt发展至今已经快三十年了,从Qt4到Qt5到Qt6已经经历了很多个版本的迭代,同时也开发了qtdesignstudio,qtcreator,qt3dstudio等开发工具。
Qt框架和工具可在开源和商业许可证下使用,一般我们使用开源许可证进行开发,商业许可的Qt包含额外的功能和生产力工具,有关详细信息,请参考 http://www.qt.io/download/ 。
1.2.1. Qt开发工具¶首先我们要明白Qt是一个应用程序框架,是一套库,是一系列开发工具的组合,这些开发工具或者库都是由Qt公司的程序员编写的,然后借助现有的编译工具编译出来的。
这套现有的编译工具叫 GNU 工具链。
GNU工具链(GNU toolchain)是一个包含了由GNU项目所产生的各种编程工具的集合。这些工具形成了一条工具链(串行使用的一组工具),用于开发应用程序和操作系统。GNU工具链在针对嵌入式系统的Linux内核、BSD及其它软件的开发中起着至关重要的作用。GNU工具链中的部分工具也被Solaris, Mac OS X, Microsoft Windows (via Cygwin and MinGW/MSYS)和 Sony PlayStation 3等等其它平台直接使用或进行了移植。
GNU工具链中包含的项目有:
GNU make:用于编译和构建的自动工具;
GNU编译器集合(GCC、G++):一组多种编程语言的编译器;
GNU Binutils:包含