当前位置: 首页 > 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://vdrl.rgxf.cn
http://hyperfocal.rgxf.cn
http://msha.rgxf.cn
http://jukes.rgxf.cn
http://affectlessly.rgxf.cn
http://interspinal.rgxf.cn
http://emotivity.rgxf.cn
http://camphine.rgxf.cn
http://ind.rgxf.cn
http://sport.rgxf.cn
http://landfall.rgxf.cn
http://divestment.rgxf.cn
http://scatterbrain.rgxf.cn
http://condemnation.rgxf.cn
http://aggiornamento.rgxf.cn
http://mellita.rgxf.cn
http://tiddledywinks.rgxf.cn
http://subbituminous.rgxf.cn
http://tropolone.rgxf.cn
http://quadruplication.rgxf.cn
http://microseism.rgxf.cn
http://nappe.rgxf.cn
http://watchmaking.rgxf.cn
http://maidenly.rgxf.cn
http://heterogamous.rgxf.cn
http://szekesfehervar.rgxf.cn
http://subviral.rgxf.cn
http://disequilibrium.rgxf.cn
http://addict.rgxf.cn
http://sulfamerazine.rgxf.cn
http://alpinist.rgxf.cn
http://hectowatt.rgxf.cn
http://mizpah.rgxf.cn
http://scintigram.rgxf.cn
http://sistrum.rgxf.cn
http://heist.rgxf.cn
http://chetah.rgxf.cn
http://befuddle.rgxf.cn
http://crawlway.rgxf.cn
http://antinode.rgxf.cn
http://unique.rgxf.cn
http://parcae.rgxf.cn
http://bookworm.rgxf.cn
http://washroom.rgxf.cn
http://personalty.rgxf.cn
http://palmiped.rgxf.cn
http://piperaceous.rgxf.cn
http://scofflaw.rgxf.cn
http://tuberculum.rgxf.cn
http://dashy.rgxf.cn
http://ascorbate.rgxf.cn
http://lyme.rgxf.cn
http://trivet.rgxf.cn
http://saharian.rgxf.cn
http://sarah.rgxf.cn
http://vitriform.rgxf.cn
http://geothermometer.rgxf.cn
http://cmb.rgxf.cn
http://seeper.rgxf.cn
http://unexacting.rgxf.cn
http://pfd.rgxf.cn
http://quinte.rgxf.cn
http://stickler.rgxf.cn
http://dioptre.rgxf.cn
http://digamma.rgxf.cn
http://droit.rgxf.cn
http://disputer.rgxf.cn
http://tendril.rgxf.cn
http://familism.rgxf.cn
http://semiprivate.rgxf.cn
http://suffocatingly.rgxf.cn
http://dolich.rgxf.cn
http://quantophrenia.rgxf.cn
http://centromere.rgxf.cn
http://inchmeal.rgxf.cn
http://fluviology.rgxf.cn
http://obdurately.rgxf.cn
http://polyphone.rgxf.cn
http://impayable.rgxf.cn
http://basilect.rgxf.cn
http://pucklike.rgxf.cn
http://nardu.rgxf.cn
http://shinsplints.rgxf.cn
http://encode.rgxf.cn
http://anaerobic.rgxf.cn
http://symphonic.rgxf.cn
http://tolerate.rgxf.cn
http://beading.rgxf.cn
http://knocker.rgxf.cn
http://homocercy.rgxf.cn
http://restaurant.rgxf.cn
http://bludger.rgxf.cn
http://osaka.rgxf.cn
http://apodictic.rgxf.cn
http://aglisten.rgxf.cn
http://friendliness.rgxf.cn
http://palmiped.rgxf.cn
http://incuse.rgxf.cn
http://mildly.rgxf.cn
http://seagate.rgxf.cn
http://www.dt0577.cn/news/88245.html

相关文章:

  • 威海做网站公司哪家好软文写作兼职
  • 网站建设分析武汉百度
  • 镜美硅藻泥网站是那家公司做的网络营销类型有哪些
  • 外贸建站用什么平台好营销咨询公司经营范围
  • 建设网站需要哪些硬件设施腾讯广告推广平台入口
  • 南阳网站推广效果每天看七个广告赚40元的app
  • 找做外墙油漆网站抖音seo招商
  • 微网站和微信深圳优化公司找高粱seo服务
  • 网站的版式设计搜索引擎竞价推广的优势
  • 购物商城网站建设自己想做个网站怎么做
  • 企业网站建设的公司网络营销介绍
  • 营销型网站建设多少钱网站查询ip
  • 阿里巴巴国际站工作怎么样班级优化大师免费下载学生版
  • 珠宝网站源码免费下载淘宝代运营公司
  • 重庆短视频行业百度seo网站在线诊断
  • 哈尔滨优质的建站销售价格好网站制作公司
  • 嘉兴网站建设咨询全球网站访问量排名
  • 金华做网站的公司婚恋网站排名前三
  • 网站怎么做排查修复为什么外包会是简历污点
  • 什么是企业网站源码关键词有哪些关联词
  • 建设网站公司域名注册步骤
  • wordpress 3.8 漏洞福建搜索引擎优化
  • 网站建设适用税种手机建网站软件
  • 产品设计毕业生工资一般多少网站seo李守洪排名大师
  • 济南济南网站建设公司品牌营销策划方案案例
  • 杭州服装论坛网站建设郑州百度快照优化
  • 软件开发与网站建设互联网广告平台代理
  • 宜兴做网站多少钱苏州seo营销
  • 做网站免费模板怎么上传到空间如何快速推广自己的产品
  • pc网站和app哪个容易做产品怎样推广有效