vs2017实现linux远程编译报错“CMake 缺少以下功能:serverMode“解决方案

背景

  • window系统vs2017使用cmake实现linux远程调试和编译时,搭建的环境报CMake 缺少以下功能:“serverMode”。请参阅 https://aka.ms/linuxcmakeconfig 了解详细信息错误,如何解决?
  • 经排查,发现远程开发环境的cmake版本不支持serverMode模式,因此,无法实现远程编译

解决方案

  • 验证远程目标服务器的cmake支持的能力,执行以下命令:cmake -E capabilities

  • 输出结果如下:
    {“fileApi”:{“requests”:[{“kind”:“codemodel”,“version”:[{“major”:2,“minor”:3}]},{“kind”:“cache”,“version”:[{“major”:2,“minor”:0}]},{“kind”:“cmakeFiles”,“version”:[{“major”:1,“minor”:0}]},{“kind”:“toolchains”,“version”:[{“major”:1,“minor”:0}]}]},“generators”:[{“extraGenerators”:[],“name”:“Watcom WMake”,“platformSupport”:false,“toolsetSupport”:false},{“extraGenerators”:[],“name”:“Ninja Multi-Config”,“platformSupport”:false,“toolsetSupport”:false},{“extraGenerators”:[“CodeBlocks”,“CodeLite”,“Eclipse CDT4”,“Kate”,“Sublime Text 2”],“name”:“Ninja”,“platformSupport”:false,“toolsetSupport”:false},{“extraGenerators”:[“CodeBlocks”,“CodeLite”,“Eclipse CDT4”,“Kate”,“Sublime Text 2”],“name”:“Unix Makefiles”,“platformSupport”:false,“toolsetSupport”:false},{“extraGenerators”:[],“name”:“Green Hills MULTI”,“platformSupport”:true,“toolsetSupport”:true}],“serverMode”:false,“version”:{“isDirty”:false,“major”:3,“minor”:21,“patch”:1,“string”:“3.21.1”,“suffix”:“”}}

  • 可以看到参数serverMode为false,因此远程编译失败,如何将参数置为true?除了换cmake的版本,目前没有想到其他的解决办法,我尝试从相同版本cmake使用源码编译的方式,去寻找与之相关联的参数,但均尝试失败。目前在centos系统下,3.17.1的版本该模式为true,而3.21则不行

  • 注意事项:

    • 如何目标服务器有多个版本的cmake,在本地的CMakeSettings.json文件中"cmakeExecutable"字段可以指定使用哪个cmake
    • 其他变量参数应尽可能使用绝对路径,避免使用类似于$HOME等宏定义变量,防止于windows的环境变量冲突

参考文献

  • https://learn.microsoft.com/zh-cn/cpp/linux/cmake-linux-configure?view=msvc-170
  • https://learn.microsoft.com/zh-cn/cpp/build/get-started-linux-cmake?view=msvc-170

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/48988.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

前端-Sass和Less区别

Less和Sass都是CSS预处理器,它们提供了更强大、更灵活的方式来编写CSS样式。以下是Less和Sass之间的一些区别: 语法:Less使用类似于CSS的语法,而Sass使用类似于Ruby的语法。Less使用大括号 {} 和分号 ; 来表示代码块和语句&#x…

c语言面向对象开发

继承和多态是c的灵魂,如何使用c语言模拟这一机制,是使用c语言实现面向对象开发的关键。 一. 不存在继承 /* class TestClass { private:int a;int b; public:void func0(int param0,int param1);void func1(int param2,int param3); }; */ str…

R语言11-R语言中的条件结构

if语句&#xff1a; if 语句用于在条件为真时执行一段代码块。 x <- 10 if (x > 5) {print("x is greater than 5") }if-else语句&#xff1a; if-else 语句允许您在条件为真和条件为假时执行不同的代码块。 x <- 3 if (x > 5) {print("x is grea…

问题描述:在Windows下没有预装ImageMagick工具

问题描述:在Windows下没有预装ImageMagick工具 # WInR输入cmd回车进入命令行,执行以下命令查看版本信息 magick --version没有预装ImageMagick工具 解决方案&#xff1a;下载安装ImageMagick 官网下载:ImageMagick-7.1.1-15-Q16-x64-dll.exe 下载之后&#xff0c;一路下一步…

WPS右键新建没有docx pptx xlsx 修复

解决wps右键没有新建文档的问题 右键没有新建PPT和Excel 1 wps自带的修复直接修复没有用 以上不管咋修复都没用 2 先编辑注册表 找到 HKEY_CLASSES_ROOT CTRLF搜文件扩展名 pptx docx xlsx 新建字符串 三种扩展名都一样操作 注册表编辑之后再次使用wps修复 注册组件&am…

【从零学习python 】64. Python正则表达式中re.compile方法的使用详解

文章目录 re.compile方法的使用进阶案例 re.compile方法的使用 在使用正则表达式时&#xff0c;我们可以直接调用re模块的match、search、findall等方法&#xff0c;并传入指定的正则表达式进行匹配。另外&#xff0c;我们还可以使用re.compile方法生成一个正则表达式对象&…

畜牧兽医虚拟仿真|病禽解剖VR模拟操作演练系统

在生物学课程中&#xff0c;动物解剖是一个重要的组成部分&#xff0c;它能够帮助学生了解动物的生理结构、功能和生活习性&#xff0c;从而更好地认识和保护自然界的生物多样性。然而&#xff0c;传统的动物解剖教学方法往往局限于课堂教学和实验室实践&#xff0c;学生很难真…

8.22笔记

8.22笔记 8.22笔记一、Hive的HQL语法重点问题1.1 DDL1.1.1 Hive中数据表的分类问题1.1.2 特殊的数据类型 1.2 DML1.3 DQL1.3.1 查询语法和MySQL大部分都是一致的 1.4 讲了三个数据库的可视化工具1.4.1 navicat1.4.2 dbeaver1.4.3 chat2db 二、Hive中重点问题&#xff1a;Hive函…

【golang】接口类型(interface)使用和原理

接口类型的类型字面量与结构体类型的看起来有些相似&#xff0c;它们都用花括号包裹一些核心信息。只不过&#xff0c;结构体类型包裹的是它的字段声明&#xff0c;而接口类型包裹的是它的方法定义。 接口类型声明中的这些方法所代表的就是该接口的方法集合。一个接口的方法集…

CSS行内,内部,外部以及优先级

1.内联样式表&#xff1a; 将样式编写到style标签里 <style>.context {color: red;} </style> 2. 行内样式&#xff1a; 在 HTML 标签中使用 style 属性设置 CSS 样式 <div style"font-size: 18px;">行内样式</div> 3.外联样式&#xff1…

【数据结构】吃透单链表!!!(详细解析~)

目录 前言&#xff1a;一.顺序表的缺陷 && 介绍链表1.顺序表的缺陷2.介绍链表&#xff08;1&#xff09;链表的概念&#xff08;2&#xff09;链表的结构&#xff08;3&#xff09;链表的功能 二.单链表的实现1.创建节点的结构2.头文件函数的声明3.函数的实现&#xff…

iPhone开启“轻点唤醒”功能但点击屏幕无反应怎么解决?

iPhone的“轻点唤醒”功能启用时&#xff0c;用户只需手指轻触或点击手机屏幕即可快速唤醒设备&#xff0c;无需按压任何按钮。然而&#xff0c;有些用户在使用“轻点唤醒”功能唤醒屏幕时&#xff0c;遇到该功能失灵&#xff0c;无法正常唤醒屏幕的情况&#xff0c;这是怎么回…

Windows系统搭建Gitblit服务器

目录 介绍安装Java环境配置环境变量 下载Gitbilt配置Gitbilt 介绍 GitBlit是一个用于搭建和管理Git服务器的开源工具。它是使用Java语言编写的&#xff0c;并且需要Java环境来运行。 1、跨平台性&#xff1a;Java是一种具有跨平台性的编程语言&#xff0c;可以在多个操作系统…

读取xml

将json文件读取成字符串 public static String getJsonStr(File jsonFile){try {FileReader fileReader new FileReader(jsonFile);Reader reader new InputStreamReader(new FileInputStream(jsonFile),"utf-8");int ch 0;StringBuffer sb new StringBuffer();…

【工具】VirtualBox虚拟机安装Windows操作系统

前面的文章中介绍了VirtualBox虚拟机的安装,VirtualBox虚拟机中如何安装操作系统,是本文的重点,下面将进行详细介绍。 使用VirtualBox虚拟机安装Windows操作系统有很多好处,主要包括以下几点: 节省资源:通过虚拟化技术,一台物理计算机可以同时运行多个虚拟机,每个虚拟…

【Terraform学习】使用 Terraform 将 EC2 实例作为 Web 服务器启动(Terraform-AWS最佳实战学习)

使用 Terraform 将 EC2 实例作为 Web 服务器启动 实验步骤 前提条件 安装 Terraform&#xff1a; 地址 下载仓库代码模版 本实验代码位于 task_ec2 文件夹中。 变量文件 variables.tf 在上面的代码中&#xff0c;您将声明&#xff0c;aws_access_key&#xff0c;aws_secr…

使用ImageMagick实现多张图片拼接为gif(多线程版)

官网: https://imagemagick.org/ 直接上代码 ExecutorService es Executors.newFixedThreadPool(10); List<File> images getImageFiles(sceneDir); CountDownLatch cdl new CountDownLatch(images.size()); // 拷贝图片 for (File file : images) {System.out.prin…

Web3 游戏七月洞察:迈向主流采用的临界点?

作者: lesleyfootprint.network 2023 年 7 月&#xff0c;Web3 游戏领域出现了小幅增长&#xff0c;但对于许多项目来说&#xff0c;用户采用仍然是一个持续的挑战。根据 Footprint Analytics 的数据&#xff0c;活跃的区块链游戏数量略有增加&#xff0c;达到 2,471 个。然而…

容器化微服务:用Kubernetes实现弹性部署

随着云计算的迅猛发展&#xff0c;容器化和微服务架构成为了构建现代应用的重要方式。而在这个过程中&#xff0c;Kubernetes&#xff08;常简称为K8s&#xff09;作为一个开源的容器编排平台&#xff0c;正在引领着容器化微服务的部署和管理革命。本文将深入探讨容器化微服务的…

C++ 好用的格式化库--fmt

背景 fmt 库是一个开源的 C 格式化库&#xff0c;它提供了一种简洁、安全和高效的方式来进行字符串格式化。该库的设计目标是提供与 Python 的字符串格式化语法类似的功能&#xff0c;同时保持 C 的类型安全性和性能。 下载与安装 官网下载 fmt 官网地址&#xff1a;https:…