ubutnu vins_fisheye编译错误 hidden symbol“ “ in“ “ is referenced by DSO

2023-11-13

/usr/bin/ld: /home/mwy/vins_fisheye/devel/lib/vins/vins_node: hidden symbol `_ZN5ceres12CostFunctionD2Ev' in /usr/local/lib/libceres.a(cost_function.cc.o) is referenced by DSO
/usr/bin/ld: 最后的链结失败: 错误的值
collect2: error: ld returned 1 exit status
VINS-Fisheye/vins_estimator/CMakeFiles/vins_node.dir/build.make:213: recipe for target '/home/mwy/vins_fisheye/devel/lib/vins/vins_node' failed
make[2]: *** [/home/mwy/vins_fisheye/devel/lib/vins/vins_node] Error 1
CMakeFiles/Makefile2:2651: recipe for target 'VINS-Fisheye/vins_estimator/CMakeFiles/vins_node.dir/all' failed
make[1]: *** [VINS-Fisheye/vins_estimator/CMakeFiles/vins_node.dir/all] Error 2
make[1]: *** 正在等待未完成的任务....
/usr/bin/ld: /home/mwy/vins_fisheye/devel/lib/vins/vins_node_fisheye: hidden symbol `_ZN5ceres12CostFunctionD2Ev' in /usr/local/lib/libceres.a(cost_function.cc.o) is referenced by DSO
/usr/bin/ld: 最后的链结失败: 错误的值
collect2: error: ld returned 1 exit status
VINS-Fisheye/vins_estimator/CMakeFiles/vins_node_fisheye.dir/build.make:214: recipe for target '/home/mwy/vins_fisheye/devel/lib/vins/vins_node_fisheye' failed
make[2]: *** [/home/mwy/vins_fisheye/devel/lib/vins/vins_node_fisheye] Error 1
CMakeFiles/Makefile2:3747: recipe for target 'VINS-Fisheye/vins_estimator/CMakeFiles/vins_node_fisheye.dir/all' failed
make[1]: *** [VINS-Fisheye/vins_estimator/CMakeFiles/vins_node_fisheye.dir/all] Error 2
Makefile:140: recipe for target 'all' failed
make: *** [all] Error 2

解决过程:

c++ - What does exactly the warning mean about hidden symbol being referenced by DSO? - Stack Overflow

 找到报错的位置 输入以下命令

 确实被隐藏了  也就是那个.hidden

 然后我去找到了用于构建ceres库的源码,从官方的CMakeLists里搜索hidden

找到了这几行

set(CMAKE_C_VISIBILITY_PRESET default)
set(CMAKE_CXX_VISIBILITY_PRESET default)
set(CMAKE_VISIBILITY_INLINES_HIDDEN OFF)

他们原来分别是hidden hidden 和ON 改成上面那样 重新编译安装ceres库就可以了 

 上面设置函数的默认导出可见性,用于设置动态链接库中函数的可见性,将变量或函数设置为hidden,则该符号仅在本so中可见,在其他库中则不可见。

动态链接库与静态链接库的区别_breakpoints_的博客-CSDN博客_动态链接库和静态链接库的区别 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ubutnu vins_fisheye编译错误 hidden symbol“ “ in“ “ is referenced by DSO 的相关文章

  • 删除文件的最后 10 个字符

    我想删除文件的最后 10 个字符 说一个字符串 hello i am a c learner 是文件内的数据 我只是希望该文件是 hello i am a 文件的最后 10 个字符 即字符串 c learner 应在文件内消除 解决方案 将
  • 在 xaml 中编写嵌套类型时出现设计时错误

    我创建了一个用户控件 它接受枚举类型并将该枚举的值分配给该用户控件中的 ComboBox 控件 很简单 我在数据模板中使用此用户控件 当出现嵌套类型时 问题就来了 我使用这个符号来指定 EnumType x Type myNamespace
  • C# 异步等待澄清?

    我读了here http blog stephencleary com 2012 02 async and await html that 等待检查等待的看看它是否有already完全的 如果 可等待已经完成 那么该方法将继续 运行 同步
  • 没有特殊字符的密码验证器

    我是 RegEx 的新手 已经进行了大量搜索 但没有找到任何具体内容 我正在编写一个验证密码字符串的正则表达式 可接受的字符串必须至少具有 4 种字符类型中的 3 种 数字 小写字母 大写字母 特殊字符 我对包含有一个想法 也就是说 如果这
  • 类型中的属性名称必须是唯一的

    我正在使用 Entity Framework 5 并且有以下实体 public class User public Int32 Id get set public String Username get set public virtual
  • 传递给函数时多维数组的指针类型是什么? [复制]

    这个问题在这里已经有答案了 我在大学课堂上学习了 C 语言和指针 除了多维数组和指针之间的相似性之外 我认为我已经很好地掌握了这个概念 我认为由于所有数组 甚至多维 都存储在连续内存中 因此您可以安全地将其转换为int 假设给定的数组是in
  • 无限循环与无限递归。两者都是未定义的吗?

    无副作用的无限循环是未定义的行为 看here https coliru stacked crooked com view id 24e0a58778f67cd4举个例子参考参数 https en cppreference com w cpp
  • 如何使从 C# 调用的 C(P/invoke)代码“线程安全”

    我有一些简单的 C 代码 它使用单个全局变量 显然这不是线程安全的 所以当我使用 P invoke 从 C 中的多个线程调用它时 事情就搞砸了 如何为每个线程单独导入此函数 或使其线程安全 我尝试声明变量 declspec thread 但
  • 需要帮助优化算法 - 两百万以下所有素数的总和

    我正在尝试做一个欧拉计划 http projecteuler net问题 我正在寻找 2 000 000 以下所有素数的总和 这就是我所拥有的 int main int argc char argv unsigned long int su
  • 访问外部窗口句柄

    我当前正在处理的程序有问题 这是由于 vista Windows 7 中增强的安全性引起的 特别是 UIPI 它阻止完整性级别较低的窗口与较高完整性级别的窗口 对话 就我而言 我想告诉具有高完整性级别的窗口进入我们的应用程序 它在 XP 或
  • 两个静态变量同名(两个不同的文件),并在任何其他文件中 extern 其中一个

    在一个文件中将变量声明为 static 并在另一个文件中进行 extern 声明 我认为这会在链接时出现错误 因为 extern 变量不会在任何对象中看到 因为在其他文件中声明的变量带有限定符 static 但不知何故 链接器 瑞萨 没有显
  • 如何定义一个可结构化绑定的对象的概念?

    我想定义一个concept可以检测类型是否T can be 结构化绑定 or not template
  • 两个类可以使用 C++ 互相查看吗?

    所以我有一个 A 类 我想在其中调用一些 B 类函数 所以我包括 b h 但是 在 B 类中 我想调用 A 类函数 如果我包含 a h 它最终会陷入无限循环 对吗 我能做什么呢 仅将成员函数声明放在头文件 h 中 并将成员函数定义放在实现文
  • 编译时展开 for 循环内的模板参数?

    维基百科 here http en wikipedia org wiki Template metaprogramming Compile time code optimization 给出了 for 循环的编译时展开 我想知道我们是否可以
  • 在 WPF 中使用 ReactiveUI 提供长时间运行命令反馈的正确方法

    我有一个 C WPF NET 4 5 应用程序 用户将用它来打开某些文件 然后 应用程序将经历很多动作 读取文件 通过许多插件和解析器传递它 这些文件可能相当大 gt 100MB 因此这可能需要一段时间 我想让用户了解 UI 中发生的情况
  • 相当于Linux中的导入库

    在 Windows C 中 当您想要链接 DLL 时 您必须提供导入库 但是在 GNU 构建系统中 当您想要链接 so 文件 相当于 dll 时 您就不需要链接 为什么是这样 是否有等效的 Windows 导入库 注意 我不会谈论在 Win
  • 当文件流没有新数据时如何防止fgets阻塞

    我有一个popen 执行的函数tail f sometextfile 只要文件流中有数据显然我就可以通过fgets 现在 如果没有新数据来自尾部 fgets 挂起 我试过ferror and feof 无济于事 我怎样才能确定fgets 当
  • C++ 中的参考文献

    我偶尔会在 StackOverflow 上看到代码 询问一些涉及函数的重载歧义 例如 void foo int param 我的问题是 为什么会出现这种情况 或者更确切地说 你什么时候会有 对参考的参考 这与普通的旧参考有何不同 我从未在现
  • MySQL Connector C/C API - 使用特殊字符进行查询

    我是一个 C 程序 我有一个接受域名参数的函数 void db domains query char name 使用 mysql query 我测试数据库中是否存在域名 如果不是这种情况 我插入新域名 char query 400 spri
  • 现代编译器是否优化乘以 1 和 -1

    如果我写 template

随机推荐

  • 读书笔记2

    深度学习入门 基于Python的理论与实现 高清中文版 pdf 1 python基础 numpy matplotlib Batch Normalization Dropout Adam 图像识别 自然语言处理 语音识别 不闻不若闻之 闻之不
  • 经典始终是经典,从理论到实践的Java并发编程实战笔记

    并发编程式Java语言的重要特性之一 当然也是最难以掌握的内容 编写可靠的并发程序是一项不小的挑战 但是 作为程序员的我们 要变得更有价值 就需要啃一些硬骨头了 例如理解并发编程的基础理论和编程实践 今天给小伙伴们带来了一份Java并发编程
  • 《数据库系统概论》 第十章 数据库恢复技术

    事务是一系列的数据库操作 是数据库应用程序的基本逻辑单元 事务处理 transaction processing 技术主要包括数据库恢复技术和并发控制技术 10 1 事务的基本概念 事务 是用户定义的一个数据库操作序列 是一个不可分割的工作
  • 判断对象中是否存在某个字段

    hasOwnProperty 方法 var obj name 我是张三 obj hasOwnProperty name 输出true obj hasOwnProperty eag 输出false 注意 该方法可以判断对象是否含有某个属性 某
  • 如何获取微信服务号用户的openID

    1 进入微信公众号官网 并登入你的微信服务号 2 点击用户管理 进入后可以看到全部用户 3 点击用户头像 如下图所示 4 自动跳转到聊天界面 浏览器上方url中包含用户openID 画圈区域 如下图所示
  • 绝地淘沙显示进不去服务器,绝地国服遥遥无期 这款国产游戏却已经抢先登陆了!...

    原标题 绝地国服遥遥无期 这款国产游戏却已经抢先登陆了 绝地求生 国服遥遥无期 广大爱好者们磨刀霍霍 奈何无鸡可吃啊 好在西山居自研DIY生存竞技端游 自由禁区 近期刚刚开启测试 给苦等的玩家们一个好去处 从笔者的亲身体验来看 虽然游戏目前
  • 图书数据清洗——实验报告

    目录 图书数据清洗 1 图书数据清洗的概念 2 图书数据清洗及可视化的理论基础 3 图书数据清洗的现状及问题 4 图书数据清洗实验报告 1 读数据表 2 提取价格数值 3 提取评论数 4 提取星级数值 5 星级数值除以20 6 出版信息字符
  • “RFID与光伏板的完美融合:探索能源科技的新时代!“

    随着科技的不断发展 人类创造出了许多令人惊叹的发明 其中 RFID Radio Frequency Identification 技术的应用在各个领域日益广泛 最近的研究表明 将RFID技术应用于光伏板领域 不仅可以提高光伏板的效率 还可以
  • acwing 第63场周赛【2022.08.06】

    acwing第63场周赛 2022 08 06 一 4503 数对数量 1 题目描述 2 思路分析 3 代码实现 二 4504 字符串消除 1 题目描述 2 思路分析 3 代码实现 三 4505 最大子集 1 题目描述 2 思路分析 3 代
  • 天猫精灵,还缺点啥?

    我也是99买的天猫精灵 马大侠在下一盘大棋 也用了京东的叮咚 感觉应该是合作开发而已 纯是为了应景 你有我有全都有而已 体验感不行 而且居然这个青春版还不能语音控制了 只能手机APP控制 垃圾 强东比起马大来 格局还是差 话说BATJ里 马
  • pandoc提取word中的图片

    pandoc提取word中的图片 pandoc i xxx docx o xxx tex extract media pathName 会将word中的图片提取到 pathName下的media中 如图所示 更多参数可以参考pandoc的用
  • vi编辑器的使用(2)

    接上篇vi编辑器的使用 1 1 4 光标移动 vi编辑器中的很多命令都是基于光标当前位置的 因此 如何移动光标定位到所需要的位置是一项十分重要的工作 下面进行详细介绍 如无特别说明 下面所讲的命令都是在普通模式下执行 1 向前移动字符 将光
  • [4G/5G/6G专题基础-150]: 6G总体愿景与潜在关键技术白皮书解读-5-缩略语释义

    目录 前言 附录 AI 人工智能 AR 增强现实 Augmented Reality 简称AR DT 数字孪生 MR 混合现实技术 MTP 头动响应 DOICT 数字 运营 信息 通信 FDD 频分双工 FTN 超奈奎斯特准则 IHR 智能
  • 2022跨年-跨年倒计时(烟花)

    前言 2022 HAPPY NEW YEAR 马上都是新的一年了 岁末已至 是结束也是开始 不管这一年好和坏 都将结束 愿来年有趣有盼 无灾无难 你我都要平安才好 善良勇敢 跨年倒计时制作步骤 步骤一 首先在电脑桌面新建txt文本文档 如下
  • 【案例】某物流集团:用数据驱动企业数字化转型

    数据猿导读 数据驱动的数字化转型是一个体系化工作 需要从理论体系 平台工具 数据 组织 机制五个方面 着手 建一个企业级的数据资产平台 梳理清晰整个集团的数据资产 并借助数据和智能的算法 在数据资产中发现新的业务价值点 创新产品和服务 从而
  • 什么是用户体验五要素

    这里是修真院pm小课堂 每篇分享文从 背景介绍 知识剖析 常见问题 解决方案 编码实战 扩展思考 更多讨论 参考文献 八个方面深度解析pm知识 技能 本篇分享的是 什么是用户体验五要素 背景介绍 用户体验五要素是以用户为中心的产品设计 本次
  • Git提交代码到新建的工程

    Git 全局设置 git config global user name luge git config global user email epi 163 com 创建 git 仓库 mkdir flink cd flink git in
  • ModelAndView 传值到 jsp页面 $ 不能取值的原因

    web xml 约束头配置有误 原来不可以的
  • 打开新窗口不用window.open的替代方法

    实现脚本如下
  • ubutnu vins_fisheye编译错误 hidden symbol“ “ in“ “ is referenced by DSO

    usr bin ld home mwy vins fisheye devel lib vins vins node hidden symbol ZN5ceres12CostFunctionD2Ev in usr local lib libc