# 搭建开发环境:Qt Creator
Qt Creator 是 Qt 提供的集成开发环境,但其本身并不依赖于 Qt 使用。可以通过配置开发套件 (Kit) 的方式来组合使用任意的编译器和构建工具。
下面讲解如何在 Qt Creator 中通过配置开发套件搭建 LarkSDK 开发环境。此处仍然假定读者已准备好不同平台下合适的编译器和必要的工具。例如在 Linux 下可以选择 GCC 编译器,在 Windows 下既可以使用 MSVC,当然也可以借助 MinGW 环境使用 GCC 等。
对 Qt Creator 的版本,理论上也没有要求。读者可以根据自身条件和实际情况,自行选用自己习惯的版本。安装 Qt Creator 的流程不再赘述。
# Linux
TIP
以下操作以 Ubuntu 20.04 操作系统为例,假定已经安装 GCC 和 CMake。
# 配置开发套件 (Kits)
启动 Qt Creator,在菜单栏中点击工具 (Tools)
,在弹出的菜单中点击选项 (Options)
。
在弹出的对话框左边选择套件 (Kits)
。
Qt Creator 安装时通常都会添加一个默认的 桌面 (Desktop)
套件。并会尝试自动检测机器上的编译环境,包括已安装的 Qt、编译器、调试器和 CMake 等。因此,建议先安装 CMake 和 GCC 再安装 Qt Creator。默认套件将自动扫描系统以正确配置编译器和 CMake 路径。配置完毕后参考下图。若编译器和 CMake 没有正确配置,需要点击 Options 对话框(上图)中 Compilers
和 CMake
选项卡,分别进行手动配置。
注意这里我们可以考虑把 Qt version
改为 None
,表示我们配置的 Kit 不使用 Qt。当然如果不管这里也不会有什么不得了的影响。
最后,如果你愿意,可以将配置好的套件改个名称。如果你在本机需要管理不同的开发套件(例如你还有别的 Kit 负责 Qt 开发),可以选择定义一个合适的名称以区分。
# 创建工程
新建工程,在 Non-Qt Project
里面,选择 Plain C++ Application
以创建一个纯 C++ 工程。
创建工程 hello-larksdk
,点击下一步。
构建系统选择 CMake,点击下一步。
选择我们事先配置好的构建套件,点击下一步。
确认信息无误之后,点击完成。
至此项目成功建立,下面开始配置 LarkSDK。
# 工程配置
首先确保 LarkSDK 已安装。使用 CMake 作为构建工具时,Qt Creator 并不提供完全图形化的项目配置方式,需要手动编辑 CMakeLists.txt
文件。
TIP
假设 LarkSDK 被安装在 /path/to/larksdk
目录下。
修改 CMakeLists.txt
的内容如下:
# 最低 CMake 版本要求,建议 3.12
cmake_minimum_required (VERSION 3.12)
project (hello-larksdk LANGUAGES CXX)
set (CMAKE_CXX_STANDARD 11)
set (CMAKE_CXX_STANDARD_REQUIRED ON)
# 设置 LarkSDK 的安装路径
set (LARKSDK_PATH "/path/to/LarkSDK")
# 通过 CMake 设置程序运行时所需动态库的查找目录
set (CMAKE_BUILD_RPATH "${LARKSDK_PATH}/lib")
# 工程以单个可执行程序 hello-larksdk 为构建目标,且只有一个 main.cpp 文件
add_executable (hello-larksdk main.cpp)
# 为构建目标配置包含目录
target_include_directories (hello-larksdk PUBLIC "${LARKSDK_PATH}/include/lark-util")
target_include_directories (hello-larksdk PUBLIC "${LARKSDK_PATH}/include/lark-core")
target_include_directories (hello-larksdk PUBLIC "${LARKSDK_PATH}/include/lark-gui")
# 为构建目标配置静态库查找目录
target_link_directories (hello-larksdk PUBLIC "${LARKSDK_PATH}/lib")
# 为构建目标指定需要连接的静态库和动态库
# 其中 larkgui, larkcore, larkutil 是 LarkSDK 提供的库
# GL, EGL 将在上面配置的动态库查找目录里寻找
# 其余为系统库,LarkSDK 要求这些库已经预先安装在系统上
target_link_libraries (hello-larksdk PUBLIC
larkgui larkcore larkutil
GL EGL
pthread dl X11 wayland-client wayland-cursor xkbcommon
)
TIP
后续 LarkSDK 将提供 Qt Creator 插件以简化配置流程。
# 编写程序
配置完毕后我们就可以编写源代码。如果 CMake 配置无误,此时 Qt Creator 应该已经可以使用代码自动提示、头文件跳转等功能。
TIP
如果发现 Qt Creator 出现代码自动完成不能工作,但头文件跳转正常等情况,可以尝试从菜单栏点击 Help
-> About Plugins
,在弹出的对话框中取消勾选 ClangCodeModel
(参考这里 (opens new window))。
我们构建一个简单的窗体,并在正中央通过标签组件显示一段文本,同时窗体根组件应用了弹性布局,使得文本始终保持在窗体的正中央。代码如下:
#include <lwindowapplication.h>
#include <lwindow.h>
#include <llabel.h>
#include <lflexlayout.h>
int main()
{
LWindowApplication app;
LWindow w(400, 300);
w.rootComponent()->setLayout(LFlexLayout());
LLabel label("Hello LarkSDK!", w.rootComponent());
w.show();
return app.exec();
}
构建并执行,效果如图。
← 搭建开发环境:VSCode 构建范例项目 →