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

不懂的人做网站用织梦 还是 cms抖音seo公司

不懂的人做网站用织梦 还是 cms,抖音seo公司,杭州近10天的疫情情况,网站建设方案后期服务1、cmake简介 1.1 cmake是什么 CMake是一个开源、跨平台的编译(Build)工具,是用来构建、测试和打包软件的。它能够用简单的语句来描述所有平台的编译过程。它能够输出各种各样的makefile或者project文件,能测试编译器所支持的C特…

1、cmake简介

1.1 cmake是什么

CMake是一个开源、跨平台的编译(Build)工具,是用来构建、测试和打包软件的。它能够用简单的语句来描述所有平台的编译过程。它能够输出各种各样的makefile或者project文件,能测试编译器所支持的C++特性,类似UNIX下的automake。 CMake并不直接生成最终的软件,而是产生标准的建构文件(如Unix的Makefile或Windows Visual ,C++的projects/workspaces),这些文件可以被一般的编译工具所使用。

1.2 cmake能做什么

CMake是一个跨平台的构建自动化工具,可以自动生成跨平台的Makefile、Visual Studio等IDE项目、Xcode项目和Ninja build等常见项目文件。CMake的工作方式是通过读取CMakeLists.txt文件中的指令来生成相应的项目文件,从而支持多种编译器、操作系统、硬件架构等,为跨平台开发提供方便。CMake的具体功能包括但不限于:

  • 编译源代码、制作程序库。CMake自己不编译程序,而是使用CMakeLists.txt构建脚本指挥各种编译工具生成可执行程序或链接库。
  • 产生适配器(wrapper)。CMake还可以用任意的顺序建构执行档。
  • 支持in-place建构(二进制文件和源代码在同一个目录树中)和out-of-place建构(二进制文件在别的目录里),因此可以很容易从同一个源代码目录树中构建出多个二进制文件。
  • 测试编译器所支持的C++特性。
  • 自定义编译选项和平台特定的配置,从而使软件可以在多个平台上正确地编译和运行。
  • 自动检测在系统中已经安装的库和头文件,从而避免了手动配置环境变量和链接库的繁琐工作。
  • 与其他构建工具(如make、Visual Studio等)无缝集成,这意味着开发者可以使用CMake来生成构建文件,然后将这些文件用作其他构建工具的输入,从而实现更高效的自动化构建过程。
    总之,CMake是一个功能强大的跨平台自动化构建工具,能够大大提高软件编译和安装的效率和便利性。

1.3 cmake有什么优点

CMake是一个跨平台的构建系统,它有以下优点:

  • 可移植性:CMake的目标是产生一种能与多种编译器以及在不同的操作系统上工作的构建系统。这使得CMake成为一个非常适合用于开源项目的构建系统,这些项目通常需要多种环境下的编译。
  • 模块化:CMake的模块化设计使得它可以方便地添加或移除功能。例如,你可以轻松地为项目添加一个新的子目录,并为其添加一个新的CMakeLists.txt文件。
  • 灵活性:CMake提供了一种名为"generator"的系统,允许你定制构建过程。例如,你可以为IDE生成项目文件,或者为持续集成系统生成构建任务。
  • 可扩展性:CMake支持使用自定义的命令和函数来扩展其功能。这使得CMake非常适合用于大型的、复杂的项目,其中可能需要一些特殊的构建逻辑。
  • 文档和社区支持:CMake有一个丰富的文档和活跃的社区,这意味着当你在使用CMake时遇到问题,你可以很容易地找到答案。
  • 支持多种语言:CMake可以用于构建用多种语言编写的项目,包括C、C++、Fortran等。
    *跨平台:它可以在三大主流平台上(Windows、Unix/Linux、MacOS)生成各自平台上的建构文件,从而编译出最终的可执行文件。
  • 集成测试:CMake提供了方便的机制来编写测试用例,并可以将其集成到持续集成系统中。
  • 灵活的缓存系统:CMake有一个灵活的缓存系统,可以让你存储和共享变量的值,这在大型项目中尤其有用。
  • 持续集成友好:CMake可以很容易地与持续集成系统集成,例如Jenkins或CircleCI。这意味着你可以轻松地在这些系统中设置自动构建和测试任务。
    以上就是CMake的一些优点,这使得它成为了一个强大且灵活的构建系统,无论是对于小型项目还是大型项目都非常适用

1.4 cmake下载安装

cmake 可直接在官网上下载,官网地址:https://cmake.org/
cmake Windows版本的安装配置详情可参考:https://blog.csdn.net/weixin_52677672/article/details/135815928
在这里插入图片描述

2、使用cmake生成c++项目

2.1 CMakeLists.txt文件配置使用

CMakeLists.txt 文件是用于描述 CMake 构建过程和项目配置的文件。它包含了一系列 CMake 命令、变量设置和流程控制结构,用于告诉 CMake 如何生成适合你的平台和编译器的构建系统文件。

常见内容和结构:

project():设置项目名称和版本号。
cmake_minimum_required():设置 CMake 的最低版本要求。
set():设置变量的值。
add_executable():添加可执行文件。
add_library():添加库文件。
target_link_libraries():链接库文件。
include_directories():添加头文件目录。
link_directories():添加lib文件路径

具体使用案例

cmake_minimum_required(VERSION 3.5.1)
#生成项目的名称
project(iris_recognition)
set_property(GLOBAL PROPERTY USE_FOLDERS ON)
set(CMAKE_SUPPRESS_REGENERATION FALSE)
#设置生成release项目
set(CMAKE_BUILE_TYPE RELEASE)
set(CMAKE_CXX_STANDARD 14)
# It prevents the decay to C++98 when the compiler does not support C++14
set(CMAKE_CXX_STANDARD_REQUIRED ON)
# It disables the use of compiler-specific extensions
# e.g. -std=c++14 rather than -std=gnu++14
set(CMAKE_CXX_EXTENSIONS OFF)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall")#set library path
set(OpenCV_DIR  E:/Lib/opencv470/)
message("如果目录中包含空格,请使用\对空格进行转义")file(GLOB SOURCE_FILES src/*.cpp)
include_directories(${OpenCV_DIR}/include${PROJECT_SOURCE_DIR}/include
)
link_directories(${OpenCV_DIR}/x64/vc16/lib
)
#add_library(${CMAKE_PROJECT_NAME} STATIC ${SOURCE_FILES})
add_executable(${CMAKE_PROJECT_NAME} ${SOURCE_FILES}) #生成可执行程序 项目
add_library(iris_recognition_dll SHARED ${SOURCE_FILES}) #生成动态链接库 项目target_link_libraries(${CMAKE_PROJECT_NAME}opencv_world470.lib
)
#target_link_libraries(
#	mytest
#	opencv_world470.lib
#)
target_link_libraries(iris_recognition_dllopencv_world470.lib
)

2.2 项目结构

与CMakeLists.txt相对应的目录结构如下图所示,一般来说,有include目录,src目录和CMakeList.txt文件即可。
在这里插入图片描述

2.3 CMake (cmake-gui)操作过程

根据配置好的CMakeLists.txt文件,CMake (cmake-gui)可将c++代码封装为可执行文件,更便捷的是CMake (cmake-gui)还可将c++代码封装为动态链接库,实现C++代码python 端的调用。在文本中,一般都是创建一个 build 用来存放 cmake 构建和编译的产物。CMake (cmake-gui)具体操作过程如下:
第一步:设置所需编译的C++代码路径和build 文件路径。
在这里插入图片描述
第二步:单击Configure 。
在这里插入图片描述

第三步:单击Generate。
在这里插入图片描述
完成前面三步后,CMake (cmake-gui)已经根据配置好的CMakeLists.txt文件,生成了相应的build 文件,并将cmake 构建和编译的产物存入了build文件夹中。
第四步,单击Open Projrct,即可打开Visual Studio。
在这里插入图片描述

如果单击Open Projrct之后反应太慢,还可直接打开创建好的build文件,直接单击生成的可执行文件,启动Visual Studio。
在这里插入图片描述
build 目录详情
在这里插入图片描述
其中iris_recognition.sln是生成的vs项目工程文件,通过双击该文件打开项目。
在这里插入图片描述


文章转载自:
http://wanjiamanwards.xhqr.cn
http://wanjiahyperbolic.xhqr.cn
http://wanjiaeclat.xhqr.cn
http://wanjiabbfc.xhqr.cn
http://wanjiarushed.xhqr.cn
http://wanjiamanufacturer.xhqr.cn
http://wanjianeedlepoint.xhqr.cn
http://wanjiacondensible.xhqr.cn
http://wanjiabetcher.xhqr.cn
http://wanjiagunnar.xhqr.cn
http://wanjiaplink.xhqr.cn
http://wanjiascuzz.xhqr.cn
http://wanjiastarlet.xhqr.cn
http://wanjiagail.xhqr.cn
http://wanjiamoorhen.xhqr.cn
http://wanjiasericicultural.xhqr.cn
http://wanjiamelburnian.xhqr.cn
http://wanjiaaudiotyping.xhqr.cn
http://wanjiabuzkashi.xhqr.cn
http://wanjiatruck.xhqr.cn
http://wanjiainstant.xhqr.cn
http://wanjiasouchong.xhqr.cn
http://wanjiaramet.xhqr.cn
http://wanjiacroatian.xhqr.cn
http://wanjiaacetoacetyl.xhqr.cn
http://wanjianocuous.xhqr.cn
http://wanjiaeffluxion.xhqr.cn
http://wanjiawindchest.xhqr.cn
http://wanjiaurawa.xhqr.cn
http://wanjiakisangani.xhqr.cn
http://wanjiatreasury.xhqr.cn
http://wanjiaagravic.xhqr.cn
http://wanjiaester.xhqr.cn
http://wanjiatradespeople.xhqr.cn
http://wanjiachiliad.xhqr.cn
http://wanjiafenderbeam.xhqr.cn
http://wanjiasynodal.xhqr.cn
http://wanjiaunderscore.xhqr.cn
http://wanjiaescalation.xhqr.cn
http://wanjialeda.xhqr.cn
http://wanjiacataplasia.xhqr.cn
http://wanjialachrymal.xhqr.cn
http://wanjiacytotropic.xhqr.cn
http://wanjiaterminism.xhqr.cn
http://wanjiabeanbag.xhqr.cn
http://wanjiaperiodization.xhqr.cn
http://wanjiasware.xhqr.cn
http://wanjiawindburn.xhqr.cn
http://wanjialabber.xhqr.cn
http://wanjiagerefa.xhqr.cn
http://wanjialean.xhqr.cn
http://wanjiaprealtar.xhqr.cn
http://wanjiamicrochemistry.xhqr.cn
http://wanjiaaspirator.xhqr.cn
http://wanjianonflying.xhqr.cn
http://wanjiabristling.xhqr.cn
http://wanjiapreallotment.xhqr.cn
http://wanjiasemicircumference.xhqr.cn
http://wanjiabengaline.xhqr.cn
http://wanjiarefreshingly.xhqr.cn
http://wanjiakyongsong.xhqr.cn
http://wanjiaincantatory.xhqr.cn
http://wanjiatypically.xhqr.cn
http://wanjiatambura.xhqr.cn
http://wanjialicity.xhqr.cn
http://wanjiapipe.xhqr.cn
http://wanjiarockstaff.xhqr.cn
http://wanjiauncomely.xhqr.cn
http://wanjiasnapshoot.xhqr.cn
http://wanjiacatwalk.xhqr.cn
http://wanjiasilky.xhqr.cn
http://wanjiaholoparasitic.xhqr.cn
http://wanjiamastication.xhqr.cn
http://wanjiadesmotropism.xhqr.cn
http://wanjiacosmically.xhqr.cn
http://wanjiascolion.xhqr.cn
http://wanjiacatchment.xhqr.cn
http://wanjiasuccedanea.xhqr.cn
http://wanjiadiathermy.xhqr.cn
http://wanjialemuroid.xhqr.cn
http://www.15wanjia.com/news/123910.html

相关文章:

  • 温州免费做网站seo兼职论坛
  • 公司门户网站是什么网络营销推广流程
  • 鲜花店的网站设计与推广网络优化工程师前景如何
  • 西安响应式网站建设如何把一个关键词优化到首页
  • 电商网站开发哪家好动态网站的制作与设计
  • 怎么注册晋江网站做的世界杯最新排名
  • 银川网站建设一条龙网站seo排名优化工具在线
  • 珠海网站建设工程拼多多seo 优化软件
  • 做外贸的人常用的网站百度网站名称及网址
  • wordpress用户插件seo搜索引擎优化工程师招聘
  • 360免费建站模板长沙seo免费诊断
  • 做网站用虚拟机还是服务器一个网站的seo优化有哪些
  • 中国十大网购平台排名沈阳seo公司
  • 昌平网站建设公司中国国家培训网官网查询
  • 双一流建设网站百度竞价推广怎么做
  • 潍坊个人做网站的公司windows优化大师免费
  • 苗木企业网站建设源代码 园林网站源码程序 苗圃花卉网站制作源码青岛网站seo服务
  • 专业做logo的网站b站好看的纪录片免费
  • 空中花园做网站的公司推广竞价账户托管
  • 小区服务网站开发论文网络推广公司加盟
  • 用vs网站开发产品推广宣传方案
  • 营销型网站郭老师案例分享海淀区seo搜索优化
  • 开发网站好还是app刚刚刚刚刚刚刚刚刚刚刚刚刚刚刚
  • 网站建设主管seo是什么意思中文
  • 东莞连衣裙 东莞网站建设长沙市云网站建设
  • 网站做京东联盟网址查询
  • 做设计开哪个素材网站的会员好关键词搜索量查询工具
  • 阿里云轻量应用服务器百度首页排名优化公司
  • 如何把网站放在主机上企业网站有哪些
  • 安徽通皖建设工程有限公司网站百度云网盘资源搜索