使用qtCreator创建一个用Cmake(需要添加CMakeLists.txt文件,不适用*.pro)编译的工程

本文介绍在Windows和Linux系统下创建Qt工程的方法。Windows常用VS编辑器,Linux则需自行选择工具,可使用QtCreator搭配qmake或CMake。文中详细说明了用qmake和CMake创建工程的步骤,还给出了简单的CMakeLists.txt配置示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在windows系统下,通常使用vs系列程序编辑器,而在linux系统下没有类似的IDE,需要我们自己选择其他工具代替

通常会使用qtCreator和cmake或者qmake来创建工程,下面是分别使用qmake和cmake创建工程的方法

1.使用qmake编译
首先,点击左上角文件,选择”新建文件或项目“选项,如下图1:在项目中分别有Application、Library、其他项目、Non QT Project、Import Project,如果选择“Application”,Qt Console Application(qt控制台应用)。
图1
一直下一步,填写工程保存路径和名称 ,直到 “完成” 之前会出现将要添加的文件,如下图:有main.cpp和untitled.pro(配置文件,使用qmake编译工程)。但是我们大部分都是使用CMakeLists.txt作为配置文件(使用cmake编译工程),在 2 中演示使用CMakeLists.txt作为配置文件创建工程。
这里写图片描述

2.使用cmake编译
与之前一样新建项目,在项目中选择Non Qt Project选项,并选择Plain C++ Application,之后选择工程保存路径和名称,之后时关键一步:如下图,选择cmake编译工程,点击 “下一步” 直到完成。创建了用CMakeLists.txt作为配置文件的工程。
这里写图片描述
这里写图片描述
3.编辑CMakeLists.txt
这个网上资料很多的。。。。。。
已经成功测试一个简单程序,CMakeLists.txt内容如下(工程新建成功之后只有前四行):

#以下四行是新建工程之后自动添加的
project(test_camera)                    #工程名称
cmake_minimum_required(VERSION 2.8)         #cmake版本要求
aux_source_directory(. SRC_LIST)            #添加源文件,把存储源文件的变量赋值给SRC_LIST
add_executable(${PROJECT_NAME} ${SRC_LIST})     #生成执行文件


if( CMAKE_BUILD_TYPE STREQUAL "Release")
  SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O3 -std=c++11 -fPIC")
else()
  SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g -O0 -std=c++11 -fPIC")#设置寻找外部库的cmake参数的
endif()
message("*** ${PROJECT_NAME}: Build type:" ${CMAKE_BUILD_TYPE} ${CMAKE_CXX_FLAGS} "***")
#设置cmake位置,
set( CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_CURRENT_SOURCE_DIR}/cmakes)
#设置opencv的位置
set(OpenCV_DIR ~/opencv-3.2.0/build)
find_package(OpenCV REQUIRED)

#-------------------------------------- 包含头文件 --------------------------------------
include_directories(${OpenCV_INCLUDE_DIRS})#设置opencv头文件包含路径,类似vs中的include路径
include_directories(${Qt5Widgets_INCLUDE_DIRS})
include_directories(${Boost_INCLUDE_DIRS})
include_directories(${CMAKE_CURRENT_SOURCE_DIR}/include)


#-------------------------------------- -添加项目- --------------------------------------
#file(GLOB_RECURSE HEADER_FILES ${CMAKE_CURRENT_SOURCE_DIR}/include/*.*h)可以用来添加头文件和源文件
#file(GLOB_RECURSE SOURCE_FILES ${CMAKE_CURRENT_SOURCE_DIR}/src/*.c*)



#-------------------------------------- -添加链接库- --------------------------------------
TARGET_LINK_LIBRARIES(${PROJECT_NAME}
${OpenCV_LIBS}
${Qt5Widgets_LIBRARIES}
${Boost_LIBRARIES}
)

以上包含了最基本的工程配置,头文件、库文件、源文件、和执行文件生成满足最简单的程序,下面是源文件main.cpp

#include <iostream>
#include"opencv2/highgui.hpp"
#include"opencv2/opencv.hpp"
#include"opencv2/imgcodecs.hpp"
#include"opencv2/imgproc.hpp"
#include"opencv2/video.hpp"
using namespace std;
using namespace cv;
int main(int argc, char *argv[])
{

    Mat frame;
    VideoCapture capture;
    bool IsOpen = capture.open(1);
    if(IsOpen)
    {
        while(true)
        {
            capture >> frame;
            imshow("test_camera", frame);
            waitKey(1);
        }

    }


    cout << "Hello World!" << endl;
    return 0;
}

以上只是用了最简单的工程演示过程。

### 创建 Qt 工程项目 在 Linux 系统上利用 Qt Creator 新建工程项目的过程相对直观。安装完成后,在应用程序编程入口能够找到 qtcreator[^2]。 #### 打开 Qt Creator 并新建项目 启动 Qt Creator 后,通过 `File` 菜单中的 `New File or Project...` 来开启新的工程创建向导。这一步骤允许选择同类型的项目模板,包括但限于 Qt Widgets Application, Qt Console Application 或者其他自定义选项[^4]。 #### 配置项目细节 选定合适的项目类别之后,输入项目的名称并指定保存位置。对于单一工程项目而言,默认设置通常已经足够,并需要额外勾选诸如“作为子项目添加到项目中”的选项;同样,“添加到版本控制系统”依据个人需求决定是否启用。 #### 设置构建套件与 CMake 支持 当涉及到基于 CMakeQt Widgets 应用程序时,确保选择了正确的编译器以及调试/发布模式。首次使用 CMake 可能会遇到一些困惑,过默认生成的基础模板提供了良好的起点,后续可根据具体情况进行调整[^1]。 ```cpp // main.cpp 示例代码片段 #include <QApplication> #include <QWidget> int main(int argc, char *argv[]) { QApplication app(argc, argv); QWidget window; window.resize(800, 600); window.show(); return app.exec(); } ``` #### 完成初始化配置 最后确认所有设置无误后点击 Finish 键完成整个流程。此时应该可以在左侧导航栏内浏览到新加入的源文件(.cpp/.h),并且可以通过 Build 下拉菜单里的 Run Cmake 功能来初步验证环境搭建情况。
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值