当前位置: 首页 > news >正文

建设网站哪家最好线上推广员是做什么的

建设网站哪家最好,线上推广员是做什么的,做旅游网站的设计感想,最大网站建设公司CMake 使用概述一、概述二、创建Qt CMake 项目三、简单介绍1. 引入Qt的库2.Qt CMake 引入第三方库3. Qt CMake 项目目录四、使用案例一、概述 CMake是一个简化跨不同平台开发项目的构建过程的工具。对C来说其实就是生成一个文件,文件里面描述了,怎么组织…

CMake 使用概述

  • 一、概述
  • 二、创建Qt CMake 项目
  • 三、简单介绍
    • 1. 引入Qt的库
    • 2.Qt CMake 引入第三方库
    • 3. Qt CMake 项目目录
  • 四、使用案例

一、概述

CMake是一个简化跨不同平台开发项目的构建过程的工具。对C++来说其实就是生成一个文件,文件里面描述了,怎么组织这个工程,用编译器怎么编译这个项目之类的,这个CMake 本身不是一个编译器,其实就是生成一个让编译器能读懂编译流程的文件工具。让CMake自动生成构建系统,例如Makefiles和Visual Studio项目文件。CMake是一个第三方工具,有自己的文档。这里就是介绍一下在Qt 5中使用CMake 3.5 系列,反正是 CMake 3系列。

二、创建Qt CMake 项目

  1. 创建CMake 项目
    其实和 qmake 创建项目一个流程,只是在选择 build 系统的时候选择 CMake 就可以啦,这里演示的是创建一个 界面软件的流程
    在这里插入图片描述

  2. 生成的工程目录如下
    在这里插入图片描述

  3. CMake 的文件定位
    其实我们所谓的写CMake其实就是 编写这个 CMakeLists 文件
    在这里插入图片描述

三、简单介绍

这里就是简单介绍一下这个 CMakeLists 的一些指令。

# 这里就是说 cmake的版本
cmake_minimum_required(VERSION 3.5)# 这里project 就是这个项目的名称,以及使用的编程语言,项目名称但不是这个生成可执行文件的名称哈
project(ssss LANGUAGES CXX)set(CMAKE_INCLUDE_CURRENT_DIR ON)# 设置 uic moc rcc 自动编译,其实就是类似qmake 一样,把Qt自己的C++特性转换为标准c++内容
set(CMAKE_AUTOUIC ON)
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON)# 支持c++ 11标准
set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_STANDARD_REQUIRED ON)# 就是找Qt 的模块
find_package(Qt5 COMPONENTS Widgets REQUIRED)# 这里是一些安卓之类的可不管
if(ANDROID)add_library(TestCmakeApp SHAREDmain.cppmainwindow.cppmainwindow.hmainwindow.ui)
else()
# 这里的 add_executable就是生成可执行文件,第一个是可执行文件名,后面就是源文件之类的add_executable(TestCmakeAppmain.cppmainwindow.cppmainwindow.hmainwindow.ui)
endif()# 链接一些动态库,这个第一次就是可执行文件名,后面就是一些库
target_link_libraries(TestCmakeApp PRIVATE Qt5::Widgets)
project(ssss LANGUAGES CXX) #运行截图如下

在这里插入图片描述

其实Qt 使用CMake 我个人使用的时候至少要几个功能:

  • 一、引入第三方库
  • 二、组织项目结构

有这些其实就是完全够用的

1. 引入Qt的库

注意要点就是 find_package() 引入包 target_link_libraries()来链接库 下面用示例来说明

  1. find_package() 理解
    find_package(Qt5 COMPONENTS 模块名 REQUIRED) 这里的模块名 可以是大写的也可以小写,我试验过了,都可以,但还是推荐首字母大写就行。模块名其实和qmake的一样,以 Qt SQL 模块举例,这个模块名就是下面 QT += sql 里面的 。sql
    也可以用 find_package(Qt模块名 REQUIRED)
    在这里插入图片描述
# find_package() 引入包# 写法1 -> 合并写法 推荐写这个
find_package(Qt5 COMPONENTS Core Widgets Sql Script SerialPort REQUIRED)# 写法2 -> 分离写法
find_package(Qt5Core REQUIRED)
find_package(Qt5Widgets REQUIRED)
find_package(Qt5SerialPort REQUIRED)
find_package(Qt5Sql REQUIRED)
find_package(Qt5Script REQUIRED)# 注意不能这么写,这种是错的
find_package(Qt5Core Qt5Widgets REQUIRED)
  1. target_link_libraries() 理解
    target_link_libraries(Hello PRIVATE Qt5::Widgets),第一个 Hello 就是可执行文件名,后面 PRIVATE 是修饰词可不管,后面的 Qt5::Widgets 就是链接的模块库的名字,后面可以继续追加库名
# 都是可以用的
target_link_libraries(Hello Qt5::Widgets)
target_link_libraries(Hello PRIVATE Qt5::Widgets)
target_link_libraries(Hello PRIVATE Qt5::Core Qt5::Widgets Qt5::Sql Qt5::SerialPort Qt5::Script)

这里写的一些变量的路径可以在 Qt Build 里配置的
在这里插入图片描述

2.Qt CMake 引入第三方库

3. Qt CMake 项目目录

四、使用案例

cmake_minimum_required(VERSION 3.5)project(CMakeAPP LANGUAGES CXX)set(CMAKE_INCLUDE_CURRENT_DIR ON)set(CMAKE_AUTOUIC ON)
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON)set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_STANDARD_REQUIRED ON)file(GLOB_RECURSE SOURCES "*.cpp" "*.cxx" "*.cc")
file(GLOB_RECURSE HEADERS "*.h")
file(GLOB_RECURSE RESOURCES "*.qrc")
file(GLOB_RECURSE FORMS *.ui)set(SRCS ${SOURCES} ${HEADERS} ${RESOURCES} ${FORMS})source_group("Header" FILES ${HEADERS})
source_group("Sources" FILES ${SOURCES})
source_group("Ui" FILES ${FORMS})
source_group("Resource" FILES ${RESOURCES})find_package(Qt5 COMPONENTS Core Widgets  Sql Script  SerialPort REQUIRED)#find_package(Qt5Core REQUIRED)
#find_package(Qt5Widgets REQUIRED)
#find_package(Qt5SerialPort REQUIRED)
#find_package(Qt5Sql REQUIRED)
#find_package(Qt5Script REQUIRED)foreach(plugin ${Qt5Network_PLUGINS})get_target_property(_loc ${plugin} LOCATION)message("Plugin ${plugin} is at location ${_loc}")
endforeach()add_executable(CMakeAPPmain.cppMainWindow.cppMainWindow.hMainWindow.ui./Part1/NewWindow.cpp./Part1/NewWindow.h./Part1/NewWindow.ui./Part2/form.cpp./Part2/form.h./Part2/form.ui
)target_link_libraries(CMakeAPP PRIVATE Qt5::Core Qt5::Widgets Qt5::Sql Qt5::SerialPort Qt5::Script)
http://www.yidumall.com/news/69669.html

相关文章:

  • 在国内做博彩网站代理国内重大新闻10条
  • 专做网页的网站百度推广售后电话
  • 建站公司网站模板网络运营培训课程
  • 电商网站开发价格河北seo推广公司
  • 广州白云网站建设网站seo运营
  • 个人或主题网站建设实验体会怎么找百度客服
  • 网站优化的前景网络营销成功案例ppt
  • html5 企业 网站百度上做推广怎么收费
  • 青岛做网站的公司排名百度知道合伙人答题兼职
  • 如何把网站做的好看seo的中文含义
  • 客户管理系统admin宁波关键词优化品牌
  • 扁平化风格 网站网络快速排名优化方法
  • 在哪个网站上找超市做生鲜如何快速推广自己的网站
  • 精品课程网站设计新乡seo外包
  • 做进口零食批发网站推广公众号的9种方法
  • wordpress主题手机版seo代码优化
  • 腾讯企业邮箱免费网页seo搜索引擎优化
  • 如何做后台网站增删改seo优化便宜
  • 购物网站做兼职李勇seo的博客
  • 猪八戒 网站开发支付网络项目发布网
  • 长安镇做网站百度集团官网
  • 网站 外包方案站长工具域名查询
  • 织梦网站首页是哪个文件长沙网络推广只选智投未来
  • 横沥网站制作招聘点击器 百度网盘
  • 江西app网站建设关键词工具网站
  • 湖北省建设厅官方网站证书查询网络推广公司服务内容
  • 衡水做网站报价谷歌搜索引擎大全
  • 设计软件免费下载官方网站论坛排名
  • 简易手机站seo是什么单位
  • php网站空间什么平台可以发广告引流