日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

CMake教程之构建Qt平台

發布時間:2024/3/12 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 CMake教程之构建Qt平台 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

  • 一:構建環境
  • 二:目錄結構
  • 三:CMakeLists文件說明
  • 四:測試

一:構建環境

??關于Qt環境下的項目,這里也使用了cmake進行構建,這樣可以減少對工程文件的依賴,同時可以做到跨平臺的使用。
??目前使用的平臺是:CMake3.16.4 + VS2015。

二:目錄結構

??國際慣例,直接上工程目錄結構:
??根目錄:

??source目錄:、

三:CMakeLists文件說明

??同樣的我們看一下根目錄的寫法:

cmake_minimum_required(VERSION 3.5.1)project("EQt") message(STATUS "${CMAKE_CURRENT_SOURCE_DIR}")#設置對c++11的支持 set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")# 設置第三方頭文件 set(include_third ${CMAKE_CURRENT_SOURCE_DIR}/source/thirdlibs/include/) include_directories(SYSTEM ${include_third})# 設置第三方庫路徑 set(lib_boost ${CMAKE_CURRENT_SOURCE_DIR}/source/thirdlibs/libs/widows/boost) set(lib_opencv ${CMAKE_CURRENT_SOURCE_DIR}/source/thirdlibs/libs/widows/opencv) set(lib_tbb ${CMAKE_CURRENT_SOURCE_DIR}/source/thirdlibs/libs/widows/tbb) link_directories(${lib_boost} ${lib_opencv} ${lib_tbb})# 配置Qt set(CMAKE_INCLUDE_CURRENT_DIR ON) # 打開全局moc,目標關聯的.h,.cpp set(CMAKE_AUTOMOC ON) # 打開全局uic,目標關聯的.ui set(CMAKE_AUTOUIC ON) # 打開全局rcc,用于編譯資源文件 set(CMAKE_AUTORCC ON) # 查找Qt庫文件 find_package( Qt5 REQUIRED COMPONENTS Widgets Core Gui Qml ) include_directories(${Qt5Widgets_INCLUDE_DIRS}${CMAKE_CURRENT_BINARY_DIR}${QT_USE_FILE}Qt5::Qml ) add_definitions(${QT_DEFINITIONS})add_subdirectory("source")

??目前沒有做平臺化區分,當前的CMakeLists.txt中未對linux平臺進行配置。后續在平臺移植下會進行補充和修改。

??source下的僅僅是對當前目錄文件的包含,所以不做過多說明。目前widget中是對qt項目的運用,所以直接看widget下的CMakeLists.txt:

project(widget)FILE(GLOB_RECURSE HEAD*.h )FILE(GLOB_RECURSE SOURCE *.cpp*.ui ) FILE(GLOB_RECURSE QRC*.qrc ) FILE(GLOB_RECURSE RES*.* ) source_group(widget FILES ${HEAD} ${SOURCE} ${QRC} ${RES}) add_library(${PROJECT_NAME} STATIC ${SOURCE_TREE} ${HEAD} ${SOURCE} ${QRC} ${RES}) set_target_properties(${PROJECT_NAME} PROPERTIES OUTPUT_NAME ${PROJECT_NAME})#設置頭文件搜索目錄 include_directories(${CMAKE_SOURCE_DIR}/source/widget )

四:測試

??根據上一篇的配置,進行vs工程的配置和構建,最后生成vs工程項目目錄如下:

??對widget項目進行編譯即可,因為widget是靜態庫項目,所以可以看到生成的widget.lib庫即可。

總結

以上是生活随笔為你收集整理的CMake教程之构建Qt平台的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。