编译Sophus报错: error: implicitly-declared 的参考解决方法

article/2025/9/3 20:50:51

一、问题描述

自己在编译Sophus时遇到如下错误:

/home/wong/Datum/third_party/Sophus-1.0.0-template/Sophus-1.0.0/test/core/test_so2.cpp:82:31: error: implicitly-declared ‘Eigen::Map<const Sophus::SO2<double> >::Map(const Eigen::Map<const Sophus::SO2<double> >&)’ is deprecated [-Werror=deprecated-copy]82 |     Eigen::Map<SO2Type const> const_shallow_copy = map_of_const_so2;

在这里插入图片描述

二、解决方法

在 CMakeLists.txt 中添加如下语句:

set(CMAKE_CXX_FLAGS "-Wno-error=deprecated-declarations -Wno-deprecated-declarations ")

这里是我添加之后的CMakeLists.txt

SET(PROJECT_NAME Sophus)PROJECT(${PROJECT_NAME})
CMAKE_MINIMUM_REQUIRED(VERSION 2.8)SET( CMAKE_VERBOSE_MAKEFILE ON)################################################################################
# Release by default
# Turn on Debug with "-DCMAKE_BUILD_TYPE=Debug"
IF( NOT CMAKE_BUILD_TYPE )SET( CMAKE_BUILD_TYPE Release )
ENDIF()set(CMAKE_CXX_STANDARD 14)
IF("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")SET(CMAKE_CXX_FLAGS_DEBUG  "-O0 -g")SET(CMAKE_CXX_FLAGS_RELEASE "-O3")SET(CMAKE_CXX_FLAGS "-Wall -Werror -Wextra -Wno-deprecated-register -std=c++14 -stdlib=libc++ -Wno-deprecated-register")
ELSEIF("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")SET(CMAKE_CXX_FLAGS_DEBUG  "-O0 -g")SET(CMAKE_CXX_FLAGS_RELEASE "-O3")SET(CMAKE_CXX_FLAGS "-Wall -Werror -Wextra -std=c++14 -Wno-deprecated-declarations -ftemplate-backtrace-limit=0")SET(CMAKE_CXX_FLAGS_COVERAGE "${CMAKE_CXX_FLAGS_DEBUG} --coverage -fno-inline -fno-inline-small-functions -fno-default-inline")SET(CMAKE_EXE_LINKER_FLAGS_COVERAGE "${CMAKE_EXE_LINKER_FLAGS_DEBUG} --coverage")SET(CMAKE_SHARED_LINKER_FLAGS_COVERAGE "${CMAKE_SHARED_LINKER_FLAGS_DEBUG} --coverage")
ELSEIF("${CMAKE_CXX_COMPILER_ID}" STREQUAL "MSVC")ADD_DEFINITIONS("-D _USE_MATH_DEFINES /wd4305 /wd4244")
ENDIF()################################################################################
set(CMAKE_CXX_FLAGS "-Wno-error=deprecated-declarations -Wno-deprecated-declarations ")# 下方省略n行

然后再次编译就可以了~

参考链接

[1] strasdat. Can’t build #214 [EB/OL]. https://github.com/strasdat/Sophus/issues/214, 2019-07-17/2022-12-06.
[2] cmake 出现大量的警告 deprecated-declarations [EB/OL]. https://www.cnblogs.com/ramlife/p/13740968.html, 2020-09-27/2022-12-06.
[3] Sophus安装踩坑 [EB/OL]. https://blog.csdn.net/weixin_41698305/article/details/116547361, 2021-05-08/2022-12-06.


http://chatgpt.dhexx.cn/article/Vt5nX4Oi.shtml

相关文章

grad can be implicitly created only for scalar outputs

1.Autograd&#xff1a;自动求导 ​ torch.Tensor 是这个包的核心类。如果设置它的属性 .requires_grad 为 True&#xff0c;那么它将会追踪对于该张量的所有操作。当完成计算后可以通过调用 .backward()&#xff0c;来自动计算所有的梯度。这个张量的所有梯度将会自动累加到.…

keil编译时,提示function “xxx“ declared implicitly错误解决办法

当keil编译时&#xff0c;出现function “USART3_Config” declared implicitly错误&#xff0c;意思是存在隐式申明&#xff0c;也就是在申明头文件或者函数名的时候存在一定的问题 通过错误指向的地方可以看到&#xff0c;此句前面也会有黄色感叹号提示&#xff0c;如下图所示…

selenium中三种等待方式:sleep,implicitly_wait,WebDriverWait

三种等待方式&#xff1a;sleep 强制等待&#xff0c; sleep&#xff0c;设置等待多长时间&#xff0c;就要等待多长时间。等待完成后&#xff0c;才会继续下一步&#xff1a; from selenium import webdriver # 导入sleep from time import sleep# 创建谷歌浏览器对象 chrom…

function declared implicitly

标题keil中出现 warning: #223-D: function “xx” declared implicitly 如图1 原因是没有包含xx函数所在的头文件&#xff0c;这虽然只是个警告&#xff0c;而且程序也能成功运行&#xff0c;但是无法点进去看这个函数&#xff08;如图2&#xff09;。count_gezi&#xff08…

【转】-【Python】- 【selenium】 -selenium中的三种等待方式(显示等待WebDriverWait()、隐式等待implicitly()、强制等待sleep())

—— 学习Python自动化测试的菜鸡&#xff0c;现在是selenium库webdriver的学习时间 【问题】 在获取页面元素的文本的时候&#xff0c;总是获取不到&#xff0c;或者显示为空&#xff1b; 【分析】 页面加载不完全&#xff1b; 【解决措施】 等待页面加载完成&#xff1…

ajax之文件上传

表单上传文件 传统的文件上传是通过form表单&#xff0c;俗话说不关注实际问题的解决方法都是假把式&#xff0c;那么我就模拟一个用户注册的功能。 观察如下代码&#xff1a; [HttpPost] public ActionResult Upload(string username, string password, string realName, st…

SpringMVC Ajax上传文件实例

做了一个文件上传模块&#xff0c;因为传统的form提交会有页面刷新&#xff0c;不符合我的使用要求&#xff0c;所以我采用Ajax提交方式&#xff0c;这里说明下&#xff0c;我的应用程序前端为Ajax提交&#xff0c;后端SpringMVC接收处理。 传统form提交文件方式&#xff1a; …

使用ajax上传文件

需求 页面上需要异步上传文件 ajax简单介绍 常用的有.get()&#xff0c; .post()&#xff0c; .load()等等&#xff0c;其中.ajax()是通用方法&#xff0c;前者均可以通过此方法实现。具体可查看https://www.runoob.com/jquery/jquery-ref-ajax.html 上传前端代码 <!DO…

文件上传ajax

因为文章内容和文章标题&#xff0c;文章图片不方便在同一个form中&#xff0c;所以这里通过ajax传输数据 文件上传 html&#xff0c;这里使用的bootstrap <div class"modal fade" id"myModal" tabindex"-1" role"dialog" aria-la…

ajax以及文件上传的几种方式

AJAX准备知识&#xff1a;JSON 什么是 JSON &#xff1f; JSON 指的是 JavaScript 对象表示法&#xff08;JavaScript Object Notation&#xff09;JSON 是轻量级的文本数据交换格式JSON 独立于语言 *JSON 具有自我描述性&#xff0c;更易理解 * JSON 使用 JavaScript 语法来描…

ajax怎么上传文件?注意事项

ajax&#xff0c;即异步处理&#xff0c;相信程序员朋友们都会感觉到亲切吧&#xff0c;因为ajax在软件开发过程中实在是太常用了&#xff0c;还是有不少刚刚入门想学习软件开发的朋友可能不是很熟悉如何使用ajax&#xff0c;今天就一起来看看吧&#xff0c;怎样使用ajax上传文…

上传文件—ajax

目录 一、上传图片文件 1.写基本html 完成页面主框架 2.script部分 2-0 主框架 上传文件按钮被点击触发事件 2-1验证使得否选择文件 2-2 介绍 FormData 2-3 监听onreadystatechange事件 小结 二、实现上传文件进度条 1. 在bootstrap找进度条组件 2.script 完成进度条算法…

使用AJAX实现上传文件

前端代码 <form id"uploadForm" method"post" enctype"multipart/form-data"><label >上传电子书</label><input type"file" name"file" ><button id"upload" type"butto…

计算多边形面积

对于规则多边形&#xff0c;矩形、梯形、平行四边形、三角形&#xff08;根据三边长度&#xff0c;利用公式计算&#xff09;&#xff0c;可以通过公式计算其面积&#xff0c;而对于一般意义的多边形&#xff08;单一多边形、不包含“洞”&#xff09;&#xff0c;怎么计算面积…

C# 多边形面积计算公式

最近在做地图相关面积计算显示工作&#xff0c;百度了很多关于多边形面积计算方面公式和代码&#xff0c;只能说贼费劲&#xff0c;最终完成了把结果展示下 原理&#xff1a;鞋带公式 定义&#xff1a;所述鞋带式或鞋带算法&#xff08;也称为高斯的面积公式和测量员的式&#…

【计算多边形面积】

题目 Input 输入数据包含多个测试实例&#xff0c;每个测试实例占一行&#xff0c;每行的开始是一个整数n(3<n<100)&#xff0c;它表示多边形的边数&#xff08;当然也是顶点数&#xff09;&#xff0c;然后是按照逆时针顺序给出的n个顶点的坐标&#xff08;x1, y1, x2,…

hdu 2036(多边形面积公式)

改革春风吹满地 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 33251 Accepted Submission(s): 17118 Problem Descripti 话说部分学生心态极好&#xff0c;每天就知道游戏&#xff0c;这次考试如此简单的题目…

鞋带公式——多边形面积求和

个人博客&#xff1a;The Blog Of WaiterXiaoYY 欢迎来互相交流学习。 啥是鞋带公式&#xff08;shoelace&#xff09; Shoelace公式&#xff0c;也叫高斯面积公式&#xff0c;是一种数学算法&#xff0c;可求确定区域的一个简单多边形的面积。 该多边形是由它们顶点描述笛卡…

皮克定理和任意多边形的面积公式

1. 叉乘&#xff1a; 若 &#xff1a; &#xff0c;&#xff0c;则&#xff1a; 而&#xff1a; 则&#xff1a; 为三角形面积&#xff0c;建议百度叉乘的几何意义 2. 皮克公式&#xff1a; 即&#xff1a;多边形面积 S 多边形内整数点的个数 n 多边形边上整数点的个数…