家具营销型网站模板平台网站建设制作
- 作者: 五速梦信息网
- 时间: 2026年03月21日 10:48
当前位置: 首页 > news >正文
家具营销型网站模板,平台网站建设制作,手机商城网站模板,什么是网络营销?请写出其定义CMake教程 - basic point 1 - Building a Basic Project 最基本的CMake项目是由单个源代码文件构建的可执行文件。对于像这样简单的项目#xff0c;只需要一个带有三个命令的CMakeLists.txt文件。 注意#xff1a;尽管CMake支持大写、小写和混合大小写命令#xff0c;但小…CMake教程 - basic point 1 - Building a Basic Project 最基本的CMake项目是由单个源代码文件构建的可执行文件。对于像这样简单的项目只需要一个带有三个命令的CMakeLists.txt文件。 注意尽管CMake支持大写、小写和混合大小写命令但小写命令是首选并将在整个教程中使用。 任何项目的顶级CMakeLists.txt都必须从使用cmake_minimum_required命令指定一个最小的CMake版本开始。这将建立策略设置并确保以下CMake功能使用兼容版本的CMake运行。要启动一个项目我们使用project命令来设置项目名称。这个调用对于每个项目都是必需的并且应cmake_minimum_required之后不久就被调用。我们将看到此命令还可以用于指定其他项目级别信息如语言或版本号。最后add_executable命令告诉CMake使用指定的源代码文件创建一个可执行文件。 语法说明 设置项目cmake最低版本要求 cmake_minimum_required(VERSION min[…policy_max] [FATAL_ERROR])设置项目名称,同时也设定了几个环境变量 project(PROJECT-NAME [language-name…]) project(PROJECT-NAME[VERSION major[.minor[.patch[.tweak]]]][DESCRIPTION project-description-string][HOMEPAGE_URL url-string][LANGUAGES language-name…]) PROJECT_SOURCE_DIR 当前source code 路径 PROJECT_BINARY_DIR 当前source bin路径使用指定的souce file 向项目中添加一个可执行文件 add_executable(name [WIN32] [MACOSX_BUNDLE][EXCLUDE_FROM_ALL][source1] [source2 …])demo main.c #include stdio.hint main(int argc, char **argv) {printf(hello world\n);return 0; }CMakeLists.txt #cmake version cmake_minimum_required(VERSION 3.2)#project name project(basic_demo)message(echo project dir is \({PROJECT_SOURCE_DIR}) message(echo project bin is \){PROJECT_BINARY_DIR}) #add executable add_executable(basic_demo main.c)编译 可以创建一个文件夹用于存放cmake产生的文件然后执行 cmake . , 编译文件cmake –build . 2 - Specifying the C Standard CMake有一些特殊的变量这些变量要么是在幕后创建的要么是在项目代码中设置的。许多这些变量都以CMAKE开头。在为项目创建变量时避免这种命名约定。其中两个特殊的用户可设置变量是CMAKE_CXX_STANDARD和CMAKE_CXX_STANDARD_REQUIRED。它们可以一起用于指定构建项目所需的c标准。 变量说明 CMAKE_CXX_STANDARD 如果在创建目标器时设置了CXX STANDARD目标器属性的默认值,c标准其特性被要求构建此目标。此属性指定构建此目标所要求的c标准的特性。对于某些编译器这会导致在编译行中添加一个标志如-stdgnu11。对于没有标准级别概念的编译器例如2015 Update 3之前的Microsoft Visual c这没有影响。支持的值有: CMAKE_CXX_STANDARDversion98C9811C1114C1417C1720C2023C23 CXX_STANDARD_REQUIRED 如果在创建目标器时设置了CXX_STANDARD_REQUIRED目标器属性则该属性为默认值。 描述CXX STANDARD的值是否是必需的。如果此属性设置为ON则CXX_STANDARD目标属性的值被视为需求。如果此属性为OFF或未设置则CXX_STANDARD目标属性被视为可选属性并且如果所请求的不可用则可能“衰减”到以前的标准。对于没有标准级别概念的编译器例如MSVC 1800 (Visual Studio 2013)和更低的版本这没有影响。 demo main.cpp #include iostreamint main(int argc, char **argv) {std::string var 3.14156;const double input_value std::stod(var); //stod是c11 中有的 如果不设定cxx version 就会报错std::cout input_value std::endl;std::cout hello world std::endl;return 0; }CMakeLists.txt #set cmake version cmake_minimum_required(VERSION 3.2)#project name project(basic_demo2)#set CXX version set(CMAKE_CXX_STANDARD 11) set(CMAKE_CXX_STANDARD_REQUIRED true)#add executable add_executable(basic_demo2 main.cpp)3 - Adding a Version Number and Configured Header File 有时在CMakelists.txt文件中定义的变量在源代码中也有这可能很有用。在这种情况下我们希望打印项目版本。实现这一点的一种方法是使用已配置的头文件。我们创建了一个包含一个或多个变量要替换的输入文件。这些变量具有特殊的语法看起来像VAR。然后我们使用coffet_file命令将输入文件复制到给定的输出文件中并将这些变量替换为CMakelists.txt文件中VAR的当前VAR值。虽然我们可以直接在源代码中编辑版本但使用这个特性是首选因为它创建了一个单一的真相来源并避免了重复。 变量说明 PROJECT_NAME_VERSION_MAJOR 项目的主版本号 PROJECT_NAME_VERSION_MINOR 项目的次版本号 拷贝文件到另外一个位置并且修改内容 configure_file(input output[NO_SOURCE_PERMISSIONS | USE_SOURCE_PERMISSIONS |FILE_PERMISSIONS permissions…][COPYONLY] [ESCAPE_QUOTES] [ONLY][NEWLINE_STYLE [UNIX|DOS|WIN32|LF|CRLF] ])input file和outfile对比 inputfile outfile #cmakedefine VAR #define VAR or #undef VAR #cmakedefine VAR 1 #define VAR 01 #cmakedefine01 VAR #define VAR 1 or #define VAR 0input file中的变量使用var or \({var} \)CACHE{VAR} \(ENV{VAR}加入头文件路径 target_include_directories(target [SYSTEM] [AFTER|BEFORE]INTERFACE|PUBLIC|PRIVATE [items1...][INTERFACE|PUBLIC|PRIVATE [items2...] ...])demo main.cpp #include iostream #include basicconfig.hint main(int argc, char **argv) {std::cout verson major basic_demo_VERSION_MAJOR version minor basic_demo_VERSION_MINOR std::endl;std::cout hello world std::endl;return 0; }CMakeLists.txt cmake_minimum_required(VERSION 3.2)project(basic_demo VERSION 1.2) configure_file(basicconfig.h.in basicconfig.h)add_executable(basicdemo main.cpp) target_include_directories(basicdemo PRIVATE \){PROJECT_SOURCE_DIR}) basicconfig.h.in #define basic_demo_VERSION_MAJOR basic_demo_VERSION_MAJOR #define basic_demo_VERSION_MINOR basic_demo_VERSION_MINOR
- 上一篇: 家具行业做那个国际网站比较好永久免费网址在线观看电视剧
- 下一篇: 家具营销型网站商丘高端网站建设
相关文章
-
家具行业做那个国际网站比较好永久免费网址在线观看电视剧
家具行业做那个国际网站比较好永久免费网址在线观看电视剧
- 技术栈
- 2026年03月21日
-
家具网站开发设计论文有限责任公司是什么企业类型
家具网站开发设计论文有限责任公司是什么企业类型
- 技术栈
- 2026年03月21日
-
家具网站建设的背景wordpress默认
家具网站建设的背景wordpress默认
- 技术栈
- 2026年03月21日
-
家具营销型网站商丘高端网站建设
家具营销型网站商丘高端网站建设
- 技术栈
- 2026年03月21日
-
家里的电脑怎样做网站赚钱北京学网站开发
家里的电脑怎样做网站赚钱北京学网站开发
- 技术栈
- 2026年03月21日
-
家谱网站源码下载网站建设及宣传管理规定
家谱网站源码下载网站建设及宣传管理规定
- 技术栈
- 2026年03月21日
