cmake工程导入新电脑环境报错

news2024/11/16 11:26:19

项目场景:

提示:这里简述项目相关背景:

在一台电脑上运行得很好的cmake工程,导入新电脑环境报错


问题描述

提示:这里描述项目中遇到的问题:

例如:数据传输过程中数据不时出现丢失的情况,偶尔会丢失一部分数据
APP 中接收数据代码:

Running C:\Program Files\CMake\bin\cmake.exe C:/Qtcode/Ffmpeg/FFmpegPlay "-GCodeBlocks - NMake Makefiles JOM" in C:\Users\gh\AppData\Local\Temp\QtCreator-HkOhPP\qtc-cmake-fKKYhkur.
CMake Deprecation Warning:
  Support for "Extra Generators" like

    CodeBlocks

  is deprecated and will be removed from a future version of CMake.  IDEs may
  use the cmake-file-api(7) to view CMake-generated project build trees.


-- Configuring done (0.1s)
CMake Error in CMakeLists.txt:
  No known features for CXX compiler

  "MSVC"

  version 19.16.27051.0.


CMake Generate step failed.  Build files cannot be regenerated correctly.
CMake process exited with exit code 1.

原因分析:

提示:这里填写问题的分析:

CMake Error in CMakeLists.txt:
  No known features for CXX compiler

  "MSVC"

  version 19.16.27051.0.

找不到编译器

找了一下cmake 文件

cmake_minimum_required(VERSION 3.25)

set(project_name "Play")

#project(test_cmake4 LANGUAGES CXX)
#project(${project_name} LANGUAGES CXX CUDA)
project(${project_name} LANGUAGES CXX)

set(CMAKE_INCLUDE_CURRENT_DIR ON)

set(CMAKE_AUTOUIC ON)
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON)

#set(WIN32_EXECUTABLE ON)

set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)

set(CMAKE_PREFIX_PATH "C:/Qt/Qt5.14.2/5.14.2/msvc2017_64")

set(DEBUG_SUFFIX)
if (MSVC AND CMAKE_BUILD_TYPE MATCHES "Debug")
    set(DEBUG_SUFFIX "d")
endif ()

set(FFMPEG_PREFIX_PATH "C:/ffmpeg6.0")
set(OpenCV_DIR "C:/opencv4.5.4/opencv/build/x64/vc15/lib")

project(${project_name} LANGUAGES CXX CUDA) 解释

当你使用 project(${project_name} LANGUAGES CXX) 这条CMake指令时,你正在定义一个CMake项目,并指定该项目将使用C++(CXX)作为主要的编程语言。

这条指令告诉CMake:

  1. 项目的名称是 ${project_name},其中 ${project_name} 是一个CMake变量,通常在使用该指令之前已被定义。
  2. 该项目将使用C++作为编程语言,这意味着CMake将自动配置适当的编译器和编译标志来编译C++源文件。

下面是一个简单的CMakeLists.txt文件的例子,其中使用了这条指令:

cmake_minimum_required(VERSION 3.10)

# 定义项目名称
set(project_name MyProject)

# 定义项目并指定C++作为编程语言
project(${project_name} LANGUAGES CXX)

# 添加源文件并指定生成的可执行文件
add_executable(${project_name} main.cpp)

在这个例子中,我们首先指定了CMake的最低版本要求(cmake_minimum_required),然后定义了一个变量 project_name 来存储项目的名称。接下来,我们使用 project 指令定义了项目,并指定了C++作为编程语言。最后,我们使用 add_executable 指令来指定一个C++源文件 main.cpp,并指定生成的可执行文件的名称与项目名称相同。

需要注意的是,如果你打算在项目中使用CUDA,那么你需要将 LANGUAGES 参数修改为 LANGUAGES CXX CUDA,并确保你的系统已经安装了CUDA工具包,并且CMake能够找到它。这样,CMake就能够配置适当的编译器和编译选项来编译C++和CUDA源文件了。

解决方案:

提示:这里填写该问题的具体解决方案:

在这里插入图片描述
更改完路径后一切正常,
在这里插入图片描述

重新运行cmake 问题解决

总结:

  1. 将#project(KaTeX parse error: Expected 'EOF', got '#' at position 41: …CXX CUDA) 修改为 #̲project({project_name} LANGUAGES CXX )

2.更改项目配置

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

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

相关文章

从零开始!学习绘制3D表情的详细指南

在2020 年的苹果全球开发者大会(WWDC),苹果发布了新的 macOS 11(又名 Big Sur)。其中在UI视觉方面macOS Big Sur 系统最大的变化就是图标上, Big Sur更新了很多新设计风格的 3D应用图标,3D设计的确可以提升UI整体的视觉氛围,并且现…

Python Flask框架(二)Flask与HTTP

HTTP,即超文本传输协议,定义了服务器与客户端之间信息交流的格式和传递方式。 当用户访问一个URL,浏览器便生成对应的HTTP请求,经由互联网发送到对应的Web服务器。Web服务器接收请求,通过WSGI将HTTP格式的请求数据转换…

AI日报:干翻AI PC!苹果M4芯片首发;GoEnhance可生成粘土风格视频;DeepSeek-V2模型已在魔搭社区开源

欢迎来到【AI日报】栏目!这里是你每天探索人工智能世界的指南,每天我们为你呈现AI领域的热点内容,聚焦开发者,助你洞悉技术趋势、了解创新AI产品应用。 新鲜AI产品点击了解:AIbase - 智能匹配最适合您的AI产品和网站 1、干翻AI …

【Unity】如何获得TMP Button下的text内容

【背景】 unity项目中使用了TMP命名空间的Button UI组件。脚本中需要获得Button下Text的内容,但是发现用TextMeshPro仍然无法获得button下的text对象。 【分析】 Hierarchy结构上看明确Button下是有Text组件的: 括号里是TMP,所以理论上用TextMeshPro类型去FindComponent…

【neteq】tgcall的调用、neteq的创建及接收侧ReceiveStatisticsImpl统计

G:\CDN\P2P-DEV\Libraries\tg_owt\src\call\call.cc基本是按照原生webrtc的来的:G:\CDN\P2P-DEV\tdesktop-offical\Telegram\ThirdParty\tgcalls\tgcalls\group\GroupInstanceCustomImpl.cpptg对neteq的使用 worker 线程创建call Call的config需要neteqfactory Call::CreateAu…

linux 使用intel oneapi报错报错

使用intel oneapi 2024.1.0 时经常报这个错误 因为当前 intel2024.1.0没有在使用 需要改回2024.0.0并安装适配的torch的包来运行

详解DOM编程

华子目录 DOM操作Document对象document对象属性属性示例document对象方法示例DOM对象节点 操作网页元素分为两步:DOM元素的选中方式DOM操作文本内容DOM操作对象属性DOM操作元素样式 DOM操作 学习网址 DOM学习: http://c.biancheng.net/view/9360.html 交互事件学习…

P8799 [蓝桥杯 2022 国 B] 齿轮

P8799 [蓝桥杯 2022 国 B] 齿轮 分析 最右边的齿轮的转速是最左边齿轮的q倍 最右边的齿轮的半径是最左边齿轮的q倍 题意即为:查询数组中是否存在两个数,其中一个是另一个的q倍 题目范围:查询次数q:2*10^5,数组范围2*10^5&…

PyTorch中定义自己的数据集

文章目录 1. 简介2. 查看PyTorch自带的数据集(可视化)3. 准备材料3.1 图片数据3.2 标签数据 4. 方法 1. 简介 尽管PyTorch提供了许多自带的数据集,如MNIST、CIFAR-10、ImageNet等,但它们对于没有经验的用户来说,理解数据加载器的工作原理以及…

品牌舆情监测工作要怎么做?

一个负面舆论的传播,可能在短时间内对企业品牌形象造成巨大损害,甚至引发舆情危机。因此,如何有效地进行品牌舆情监测,成为企业不可忽视的问题。伯乐网络传媒多年网络公关、舆情监测经验,今天就来给大家分享一下。 一、…

wsl2安装rancher及导入k3s集群

环境准备 安装wsl2点击此文]ubuntu20.04安装docker 点击此文,安装完成后docker镜像仓库改成阿里云镜像加速地址.如果不熟请点击此文 docker 安装rancher 启动wsl,根据官方文档以root身份执行 sudo docker run -d --restartunless-stopped -p 80:80 -p 443:443 --privileged …

Redis 支持的 Java 客户端都有哪些?

Redis 是一种高性能的键值存储系统,它以其快速、灵活和可扩展的特性而闻名。在 Java 开发中,与 Redis 交互的方式通常是通过使用 Redis 的 Java 客户端。 这些客户端提供了访问 Redis 数据库的接口,使开发人员能够在 Java 应用程序中轻松地使…

软件设计师(案例分析)

软件设计师 数据流图总结 数据库总结 面向对象分析 数据流图 做题方法: 第一题:找外部实体,这个实体可以是系统也可以是人,比如客户中介等。 第二题:数据存储,这个比较简单,根据加工就可以看出来…

硬件知识积累 音频插座的了解,看音频插座的原理图来了解音频插座的引脚。

1. 音频接口 音频插座是一种用于连接音频信号线路的电子元件,常见于音频设备(如音响、耳机、话筒等)中。它的主要作用是将电子信号转化为声音信号,以满足人们对于音乐、电影、游戏等方面的需求。 根据插头形状的不同,音…

通过编写dockerfile部署python项目

docker命令总览 docker通过dockerfile构建镜像常用命令 # 创建镜像(进入dockerfile所在的路径) docker build -t my_image:1.0 .# 查看镜像 docker images# 创建容器 docker run -dit --restartalways -p 9700:9700 --name my_container my_image:1.0 #…

跟随Facebook的足迹:社交媒体背后的探索之旅

在当今数字化时代,社交媒体已经成为了人们日常生活中不可或缺的一部分。而在这庞大的社交媒体网络中,Facebook作为其中的巨头,一直在引领着潮流。从创立之初的一个大学社交网络到如今的全球性平台,Facebook的发展历程承载了无数故…

【LeetCode】链表oj专题

前言 经过前面的学习,咋们已经学完了链表相关知识,这时候不妨来几道链表算法题来巩固一下吧! 如果有不懂的可翻阅之前文章哦! 个人主页:小八哥向前冲~-CSDN博客 数据结构专栏:数据结构【c语言版】_小八哥…

初学者必知:ARM与单片机的区别

在开始前我有一些资料,是我根据网友给的问题精心整理了一份「ARM的资料从专业入门到高级教程」, 点个关注在评论区回复“888”之后私信回复“888”,全部无偿共享给大家!!!ARM和单片机之间有许多区别&#…

使用Processing和PixelFlow库创建交互式流体太极动画

使用Processing和PixelFlow库创建交互式流体太极动画 引言准备工作效果展示代码结构代码解析第一部分:导入库和设置基本参数第二部分:流体类定义MyFluidDataConfig 类详解MyFluidData 类详解my_update 方法详解流体类定义完整代码 第三部分:太…

信创基础软件之中间件

信创基础软件之中间件 中间件概述 中间件是一种应用于分布式系统的基础软件,位于应用与操作系统、数据库之间,主要用于解决分布式环境下数据传输、数据访问、应用调度、系统构建和系统集成、流程管理等问题,是分布式环境下支撑应用开发、运…