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

梅州做网站wlwl专注于seo顾问

梅州做网站wlwl,专注于seo顾问,运营网站是什么意思,国家和城乡建设部网站首页在使用 CMake 作为构建工具的时候, 对于一个稍微大一点的项目, 存在有很多的选项. 比如 Debug 版本还是 Release 版本, 是否开启特定选项, 是否开启测试等等. 这些通常是作为命令行参数传递进去的. 但是很多程序员并不在命令行中作开发, 更多的是使用 IDE 来进行开发. 不同的 I…

在使用 CMake 作为构建工具的时候, 对于一个稍微大一点的项目, 存在有很多的选项. 比如 Debug 版本还是 Release 版本, 是否开启特定选项, 是否开启测试等等. 这些通常是作为命令行参数传递进去的. 但是很多程序员并不在命令行中作开发, 更多的是使用 IDE 来进行开发. 不同的 IDE 的设置参数的方式不同, 这对于多方协同的开发来说, 有些不方便.

CMake Presets 就提供了一种解决这个问题的方式. 它允许你定义一个配置文件(CMakePresets.json), 将对 CMake 的传递参数写入到该文件, 然后在 IDE 中加载这个配置文件, 然后就可以使用 IDE 的界面来设置参数了. 这样不论是在命令行,还是 IDE 中都能很方便的使用相同参数. 目前支持的 IDE 有: CLion/Visual Studio/VS Code.

如何使用

  1. 创建一个 CMakePresets.json 文件. 用户也可以创建一个本地的CMakeUserPresets.json文件, 来做本地化适配. 但这个文件不应该被添加到 git 仓库中.
  2. 写入配置, 配置方法见后.
  3. 重新打开项目, 重新加载项目.

CMakePresets.json 文件结构

包含如下字段:

  1. version: 必填字段. 配置文件格式(schema)版本号, 目前是一个整数. 不同版本的 CMake 支持的版本不一样. 详细列表请查看官网文档.
  2. cmakeMinimumRequired: 可选字段. 表示对 CMake 版本的最低要求.
  3. configurePresets: 可选字段. 用于配置 CMake 的参数. 这个是经常使用的字段.
  4. buildPresets: 可选字段. 用于构建的参数. 最低要求版本 2.
  5. testPresets: 可选字段. 用于测试的参数. 最低要求版本 2.
  6. packagePresets: 可选字段, 用于打包的参数. 最低要求版本 6.
  7. workflowPresets: 可选字段. 用于工作流的参数. 最低要求版本 6.

这些字段的详细配置介绍起来枯燥乏味, 这里针对使用场景来介绍如何使用.

配置样例

设置 CMake 命令行参数

{"configurePresets": [{"name": "linux-base","description": "Default CMake configure preset","generator": "Ninja","binaryDir": "/tmp/build","cacheVariables": {"CMAKE_BUILD_TYPE": "Debug","CMAKE_EXPORT_COMPILE_COMMANDS": "YES","CMAKE_TOOLCHAIN_FILE": "/home/vscode/vcpkg/scripts/buildsystems/vcpkg.cmake"},"condition": {"type": "equals","lhs": "${hostSystemName}","rhs": "Linux"}}]
}

上述的配置等价于:

cmake -S . \-B /tmp/build-G Ninja \-DCMAKE_BUILD_TYPE=Debug \-DCMAKE_EXPORT_COMPILE_COMMANDS=YES \-DCMAKE_TOOLCHAIN_FILE=/home/vscode/ vcpkg/scripts/buildsystems/vcpkg.cmake

并且该选项只在 Linux 系统下生效. 这是通过condition字段实现的. 同样的, 你可以写出只在 Windows 可用的配置.

配置工作流

下面的配置创建了一个从配置到运行测试的工作流. 在前面的 configurePresets 我们需要依次配置:

  1. buildPresets
  2. testPresets
  3. workflowPresets
{"configurePresets": [{"name": "linux-base","description": "Default CMake configure preset","generator": "Ninja","binaryDir": "/tmp/build","cacheVariables": {"CMAKE_BUILD_TYPE": "Debug","CMAKE_EXPORT_COMPILE_COMMANDS": "YES","CMAKE_TOOLCHAIN_FILE": "/home/vscode/vcpkg/scripts/buildsystems/vcpkg.cmake"},"condition": {"type": "equals","lhs": "${hostSystemName}","rhs": "Linux"}}],"buildPresets": [{"name": "linux-base-build","configurePreset": "linux-base"}],"testPresets": [{"name": "linux-base-test","configurePreset": "linux-base","output": {"outputOnFailure": true},"execution": {"noTestsAction": "error","stopOnFailure": true}}],"workflowPresets": [{"name": "default","steps": [{"type": "configure","name": "linux-base"},{"type": "build","name": "linux-base-build"},{"type": "test","name": "linux-base-test"}]}]
}

在 VS Code 中, 可以点击run workflow即可运行上述的工作流.

在命令行触发:

cmake --workflow --preset default

示例项目仓库

IDE 中使用

  1. CLion 目前支持使用 CMakePresets.json 做配置和构建.

      1. 打开 Settings -> Advanced Settings -> Automatically import CMake Presets
      1. 启用配置: Settings | Build, Execution, Deployment | CMake
        CLion
  2. VS Code 目前的支持比较完整, 可以直接运行工作流. VS Code 中需要使用C/C++ Extension Pack来做到支持.
    run-workflow

进一步阅读

  1. 使用 CMake 开发库(Library)的最佳实践
  2. CMake 入门教程
  3. VS Code C++ 开发环境配置
http://www.dtcms.com/wzjs/256313.html

相关文章:

  • 成都哪个网站建设比较好推广资源网
  • 阿里巴巴做网站深圳疫情最新消息
  • 微信的网站怎么做的win7优化大师免安装版
  • 公司申请网站备案广告推广投放平台
  • 做简单的网站链接软文网站有哪些
  • 贵阳商城网站开发网站推广是干嘛的
  • 艺术视频手机网站可以做吗seo教程自学
  • 网站1g空间多少钱深圳网站建设方案
  • 未来分发网下载app网站搜索引擎优化的基本内容
  • 网页设置安全站点百度一下你就知道移动首页
  • 情侣网站建设策划书免费网站站长查询
  • 洛阳市App网站开发公司百度写作助手
  • ug wordpress苏州网站seo优化
  • 广州软件园 网站建设新闻最新消息
  • 如何在网站上添加备案号网络营销策划方案ppt模板
  • 专做女装拿货的网站网络推广的途径有哪些
  • 做教育的网站下载安装百度一下
  • 一套完整新媒体运营方案windows优化大师怎么使用
  • 淄博易宝网站建设宁波seo费用
  • 网站建设骗局网络推广员具体做什么的
  • 做外贸推广自己网站可以发外链的平台
  • 平板购物网站建设什么是推广
  • 渐变配色网站网络平台怎么创建
  • 百度网站安全检测腾讯云服务器
  • 昌平做网站的公司东莞网络推广招聘
  • 做移动网站内容营销策略有哪些
  • 中国高清adidas网站seo管理系统培训
  • 微网站后台内容设置企业seo排名哪家好
  • 北京哪家做网站和网络推广好的龙华线上推广
  • 如何让别人浏览我做的网站万能导航网