网易首页 > 网易号 > 正文 申请入驻

使用CMake Presets预览版进行Azure Sphere开发

0
分享至

有点小注意

因为某些你懂得的原因,我使用了英译 吉特哈布,你应该能懂,如果不懂,请联系我。
这个英译,看起来,还挺酷。

正文开始

我们很高兴地宣布,Visual Studio 16.10版本以及Visual Studio Code的 CMake 工具 1.7版中提供了CMake Presets预览支持。

Erika介绍了CMake Presets以及为什么要使用它们,这篇文章将重点介绍如何将它们用于跨Visual Studio、VS Code 和吉特哈布Actions的Azure Sphere开发,以在你的开发团队和CI系统中实现一致的构建设置。

Azure Sphere是一个全面的IoT安全解决方案,它超出了本文的范围。 Azure Sphere 项目基于CMake,应用程序开发使用C语言。

由于CMake Presets在 VS 和 VS Code 中仍处于预览阶段,它们还不是由Visual Studio 或 VS Code 创建的 Azure Sphere 项目的一部分。 将来,它们将成为官方 Azure Sphere 示例的一部分。 为了收集有关使用 Azure Sphere 的 CMake 预设的早期反馈,我准备了一个配置了 CMake 预设的 Azure Sphere 项目的 吉特哈布 模板存储库,你可以使用它来关注这篇文章。

来自 吉特哈布 模板的示例

吉特哈布 模板存储库是一种可以从现有存储库创建新项目的方式,而不是启动一个分支。 这对于提供示例以启动一个新项目非常有用,从那里克隆无意将更改发送到上游。 你可以通过选择“使用此模板”直接在 吉特哈布 上创建自己的存储库,然后将其克隆到本地。 或者,你也可以使用 吉特哈布 cli 一步从本地和 吉特哈布 上面的模板创建自己的存储库。

按照上述命令的提示操作,它将你的 吉特哈布 帐户中创建一个名为 azblink 的存储库并创建它的本地副本。

CMake Presets 文件

此项目中的 CMakePresets.json 文件具有用于在 Windows 和 Linux 上面进行调试和发布构建的预设配置。 这两个预设都继承自一个通用的基本配置。

此配置被标记为隐藏,这意味着它不能直接使用,它仅用于为其他预设提供通用设置。 我们可以看到,它被设置为使用 Ninja 作为构建工具,并且这里配置的输出目录是从使用的配置派生的。 我们还可以看到为 Azure Sphere API 设置项目配置的变量集。

还有另外两个隐藏的预设:Windows-Base 和 Linux-Base。 它们继承自上述 Base 配置,并且分别为 Azure Sphere 工具链文件设置 CMake 缓存变量。 该变量使用在每个相应部分中为默认 Azure Sphere SDK 安装位置设置的环境变量。 你还会注意到,指定主机操作系统的供应商部分。 Visual Studio 和 VS Code 使用它来在该操作系统上显示该配置选项。 这减少了选择无效配置的可能性。

Visual Studio

如果你在 Visual Studio 打开此项目,它将自动选择 Windows 调试配置,并准备使用隐式默认构建配置进行构建。 launch.vs.json 中 Visual Studio 启动配置作为 .vs 文件夹下的异常检入,因此预配置了调试。 你应该不需要修改此文件。

有关如何使用 Visual Studio 配置和构建 CMake 预设的更多信息,请参阅我们的文档。

VS Code

如果你在 VS Code 打开此项目,系统将提示您选择要使用的配置。 选择调试。 这是因为 settings.json 预先配置为使用 CMake 工具扩展。 构建项目时,系统会提示你进行构建配置,请从所选配置中选择隐式默认值。 要进行调试,你需要连接 Azure Sphere 板。

此项目确实包含 devcontainer 定义,因此可能会提示你在 devcontainer 中打开。 这是受支持的,因此请随意尝试,它将完全按照上述方式工作,包括调试。

由于有一个 devcontainer 定义,这个项目也可以在 吉特哈布 Codespaces 中打开。 导航到你创建的存储库并选择代码按钮上的下拉菜单,然后在代码空间中打开。 在 Web 界面中,你可以构建项目。 如果您从 VS Code 连接到 Codespace,你还可以调试到本地连接的设备。

吉特哈布 Actions

此项目已预先配置为使用吉特哈布操作。你可以在此处详细了解如何将吉特哈布操作与 Azure Sphere 项目一起使用。由于 CMake 预设是新的,与其他示例和当前指南不同的是 CMake 的调用。如果你查看 .devcontainer/Dockerfile,你将看到它是一个多阶段定义,具有三个目标:dev、debug-build 和 release-build。开发阶段只是官方的 Azure Sphere 容器映像。这用于交互式 devcontainer。另外两个阶段继承了 dev 阶段作为基础。每个阶段都将 repo 复制到容器中,然后使用调试或发布预设运行 CMake,然后将适当的入口点设置为生成的缓存以开始构建。

查看 ·吉特哈布\workflows\ci.yml 文件,你将看到官方指南的细微更改,以使用通过使用 CMake Presets 在构建输出中创建的路径。

如果从一开始你就按照模板存储库创建自己的存储库,那么你应该已经成功构建了。转到你在 吉特哈布 上的存储库并导航到“操作”选项卡。你应该会看到初始提交的完整工作流程。如果选择,将有一个带有 Azure Sphere 映像包的工件,可以直接部署到设备或作为部署到设备组的一部分。

接下来

Visual Studio 和 Visual Studio Code 中的 CMake Presets 集成仍处于预览阶段。 我们将继续添加到我们的集成中,并在未来版本的 Visual Studio 和 VS Code 的 CMake 工具扩展中解决你的反馈。

总结

有兴趣的猿友可以体验下预览版,看看效果,吃吃瓜。

最后

Microsoft Visual C++团队的博客是我非常喜欢的博客之一,里面有很多关于Visual C++的知识和最新的开发进展。大浪淘沙,如果你对Visual C++这门古老的技术还是那么感兴趣,则可以经常去他们那(或者我这)逛逛。
本文来自:《Preview of using CMake Presets for Azure Sphere development》

最近我写了个东西

正如你们所知道的,拓扑梅尔智慧办公平台(Topomel Box)是一款绿色软件,主要面向经常使用电脑的朋友。它提供了各种提升办公效率的小功能,同时操作上尽可能地简单方便。
我想:你值得拥有。

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
布林肯专机抵达北京,现场依旧没有铺红毯,明天将与王毅外长会谈

布林肯专机抵达北京,现场依旧没有铺红毯,明天将与王毅外长会谈

书山有路勤为径
2024-04-25 20:11:24
当网友隐姓埋名爆料医院的大瓜,你永远也想象不到,到底有多炸裂

当网友隐姓埋名爆料医院的大瓜,你永远也想象不到,到底有多炸裂

王二哥老搞笑
2024-04-26 03:01:33
美方扶持的4位中国富豪开始露头了:在华疯狂捞金,扭头捐给美国

美方扶持的4位中国富豪开始露头了:在华疯狂捞金,扭头捐给美国

匹夫来搞笑
2024-04-23 20:40:15
【解局】布林肯开启任内第二次访华行程,中美可能谈出怎样的结果?

【解局】布林肯开启任内第二次访华行程,中美可能谈出怎样的结果?

环球网资讯
2024-04-25 10:24:17
“太可怕了!”苹果手机被指搜“发现石油”会触发定位,客服:任何操作都可能…

“太可怕了!”苹果手机被指搜“发现石油”会触发定位,客服:任何操作都可能…

北京商报
2024-04-25 08:07:08
恭喜湖人!魔兽主动来投!G3正式季后赛首秀,重组双塔对抗约基

恭喜湖人!魔兽主动来投!G3正式季后赛首秀,重组双塔对抗约基

刘哥谈体育
2024-04-25 21:50:19
针对巴黎奥运会,王曼昱坦露心声,向刘国梁和马琳,释放积极信号

针对巴黎奥运会,王曼昱坦露心声,向刘国梁和马琳,释放积极信号

北丐聊球
2024-03-07 14:48:14
CBA最新消息!萨林杰正式离队,周鹏确定续约,许梦君合同到期

CBA最新消息!萨林杰正式离队,周鹏确定续约,许梦君合同到期

体坛瞎白话
2024-04-25 16:14:07
突发!洛杉矶GDP曾超过上海2620亿,如今竟扩大到42803亿,拉跨了

突发!洛杉矶GDP曾超过上海2620亿,如今竟扩大到42803亿,拉跨了

我不叫阿哏
2024-04-26 00:16:12
赖清德向大陆喊话,韩国瑜给大陆出难题,蓝绿联合?马英九警告

赖清德向大陆喊话,韩国瑜给大陆出难题,蓝绿联合?马英九警告

DS北风
2024-04-25 12:48:14
2014年,北京女博士李香蓉,接受不了新郎身份,车内将其几刀刺死

2014年,北京女博士李香蓉,接受不了新郎身份,车内将其几刀刺死

今天说故事
2024-04-22 16:00:06
美国下任总统已确定,将迎来第一位“女总统”?拜登蹦跶不起来了

美国下任总统已确定,将迎来第一位“女总统”?拜登蹦跶不起来了

星辰故事屋
2024-04-25 17:34:05
中国足协重装上阵,归化球员或已在路上!伊万很满意!

中国足协重装上阵,归化球员或已在路上!伊万很满意!

动物的世界6
2024-04-26 02:35:26
狐狸尾巴终于藏不住了吧!他妻妾成群,大儿子竟和巩俐越长越像

狐狸尾巴终于藏不住了吧!他妻妾成群,大儿子竟和巩俐越长越像

阿芒娱乐说
2024-04-25 21:42:32
取消5450亿美债,中方拒做“接盘侠”,耶伦担忧:可怕的在后面

取消5450亿美债,中方拒做“接盘侠”,耶伦担忧:可怕的在后面

王五说说看
2024-04-25 18:50:13
邮报:因强奸被捕的两名英超球员已被停赛

邮报:因强奸被捕的两名英超球员已被停赛

懂球帝
2024-04-25 05:25:17
闹大了!男子销户后银行欠他2分无法支付,银行报警!网友炸锅了

闹大了!男子销户后银行欠他2分无法支付,银行报警!网友炸锅了

功标青史
2024-04-23 17:11:03
54年后才明白,当年苏联挖穿地球,为何挖到12262米就停了?

54年后才明白,当年苏联挖穿地球,为何挖到12262米就停了?

祥瑞
2024-04-22 11:43:27
红牛将抛弃电商平台,线上渠道停止供货

红牛将抛弃电商平台,线上渠道停止供货

电商报APP
2024-04-25 14:15:31
神秘的换妻游戏,背后组织者身份曝光真相令人心痛不已

神秘的换妻游戏,背后组织者身份曝光真相令人心痛不已

小鱼滑
2024-04-20 02:05:06
2024-04-26 04:02:46
漫漫开发路
漫漫开发路
Topomel Box开发者
820文章数 1339关注度
往期回顾 全部

科技要闻

北京车展,被穿红衣服的他们占领

头条要闻

河北一高校学生就读4年无学籍 省教育厅回应

头条要闻

河北一高校学生就读4年无学籍 省教育厅回应

体育要闻

当胜利变成意外,就不要再提未来……

娱乐要闻

心疼!伊能静曝儿子曾被狗仔追到洗手间

财经要闻

24年后再产纯净水 农夫山泉为何要打自己脸

汽车要闻

全新哈弗H9亮相 大号方盒子硬派SUV入列

态度原创

游戏
艺术
教育
时尚
军事航空

兽族内战零封Fly,塔魔TR独步天下

艺术要闻

艺术名画︱爱尔兰画家大卫·科因的刀画作品

教育要闻

张雪峰说,考上二本不是不够努力,你知道河南省考二本有多难吗?

复盘中年女人的穿搭,才知道不扮嫩更高级有气质,这么穿很美

军事要闻

俄美在安理会就外空核武器问题发生冲突

无障碍浏览 进入关怀版