《视觉SLAM十四讲》报错信息和解决方案
文章目录
- `ch4-Sophus`编译报错
- `ch5/imageBasics`安装opencv4.x报错
- `ch5/joinMap/CMakeLists.txt`编译报错
- `ch5/joinMap`-`pcl_viewer map.pcd`报错
ch4-Sophus编译报错
- 报错信息:
error: lvalue required as left operand of assignmentunit_complex_.real() = 1.;^~
error: lvalue required as left operand of assignmentunit_complex_.imag() = 0.;^~
CMakeFiles/Sophus.dir/build.make:65: recipe for target 'CMakeFiles/Sophus.dir/sophus/so2.cpp.o' failed
- 解决方法:修改Sophus下的so2.cpp文件
-
将下面这个修改一下:
unit_complex_.real() = 1.; unit_complex_.imag() = 0.; -
修改为:
unit_complex_.real(1.); unit_complex_.imag(0.);
-
ch5/imageBasics安装opencv4.x报错
- 环境:Unbuntu22.04,安装opencv4.x
- 报错信息:
libgtk2.0-dev : 依赖: libgdk-pixbuf-2.0-dev (>= 2.21.0) 但无法安装它 或 libgdk-pixbuf2.0-dev (>= 2.21.0) 但无法安装它
- 解决方案:参照https://blog.csdn.net/qq_51022848/article/details/128095476
ch5/joinMap/CMakeLists.txt编译报错
- 报错信息:
error: #error PCL requires C++14 or above
- 我的解决方案:注释掉关于 c++11特性的设置
# set( CMAKE_CXX_FLAGS "-std=c++11 -O3")
ch5/joinMap-pcl_viewer map.pcd报错
-
环境:Mac中的Ubuntu22.04虚拟机
-
报错信息:在生成map.pcd地图之后执行
pcl_viewer map.pcd报错:$ ch5/joinMap$ pcl_viewer map.pcd 2023-07-31 21:33:35.519 ( 0.006s) [ C7314880] vtkContextDevice2D.cxx:32 WARN| Error: no override found for 'vtkContextDevice2D'. The viewer window provides interactive commands; for help, press 'h' or 'H' from within the window. > Loading map.pcd 2023-07-31 21:33:35.647 ( 0.134s) [ C7314880]vtkOpenGLRenderWindow.c:499 ERR| vtkXOpenGLRenderWindow (0x563c2ae6cf10): Unable to find a valid OpenGL 3.2 or later implementation. Please update your video card driver to the latest version. If you are using Mesa please make sure you have version 11.2 or later and make sure your driver in Mesa supports OpenGL 3.2 such as llvmpipe or openswr. If you are on windows and using Microsoft remote desktop note that it only supports OpenGL 3.2 with nvidia quadro cards. You can use other remoting software such as nomachine to avoid this issue. 2023-07-31 21:33:35.647 ( 0.134s) [ C7314880] vtkOpenGLState.cxx:1795 WARN| Hardware does not support the number of textures defined. 2023-07-31 21:33:35.647 ( 0.134s) [ C7314880] vtkOpenGLState.cxx:1795 WARN| Hardware does not support the number of textures defined. 2023-07-31 21:33:35.648 ( 0.134s) [ C7314880] vtkOpenGLState.cxx:1795 WARN| Hardware does not support the number of textures defined. 2023-07-31 21:33:35.648 ( 0.135s) [ C7314880] vtkOpenGLState.cxx:1795 WARN| Hardware does not support the number of textures defined. 2023-07-31 21:33:35.648 ( 0.135s) [ C7314880] vtkOpenGLState.cxx:1795 WARN| Hardware does not support the number of textures defined. 2023-07-31 21:33:35.648 ( 0.135s) [ C7314880] vtkOpenGLState.cxx:1795 WARN| Hardware does not support the number of textures defined. 2023-07-31 21:33:35.648 ( 0.135s) [ C7314880] vtkOpenGLState.cxx:1795 WARN| Hardware does not support the number of textures defined. [PCLVisualizer::setUseVbos] Has no effect when OpenGL version is ≥ 2 2023-07-31 21:33:35.655 ( 0.141s) [ C7314880] vtkTextureObject.cxx:1463 ERR| vtkTextureObject (0x563c2b3b8c90): Failed to determine texture parameters. IF=0 F=6408 T=5121 2023-07-31 21:33:35.655 ( 0.141s) [ C7314880] vtkOpenGLState.cxx:1795 WARN| Hardware does not support the number of textures defined. 2023-07-31 21:33:35.655 ( 0.142s) [ C7314880] vtkOpenGLState.cxx:1795 WARN| Hardware does not support the number of textures defined. 2023-07-31 21:33:35.665 ( 0.152s) [ C7314880] vtkShaderProgram.cxx:437 ERR| vtkShaderProgram (0x563c2b250fb0): 1: #version 150 2: #ifndef GL_ES 3: #define highp 4: #define mediump 5: #define lowp 6: #endif // GL_ES 7: #define attribute in 8: #define varying out 9: 10: 11: /*========================================================================= 12: 13: Program: Visualization Toolkit 14: Module: vtkPolyData2DVS.glsl 15: 16: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen 17: All rights reserved. 18: See Copyright.txt or http://www.kitware.com/Copyright.htm for details. 19: 20: This software is distributed WITHOUT ANY WARRANTY; without even 21: the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 22: PURPOSE. See the above copyright notice for more information. 23: 24: =========================================================================*/ 25: 26: // all variables that represent positions or directions have a suffix 27: // indicating the coordinate system they are in. The possible values are 28: // MC - Model Coordinates 29: // WC - WC world coordinates 30: // VC - View Coordinates 31: // DC - Display Coordinates 32: 33: in vec4 vertexWC; 34: 35: // material property values 36: //VTK::Color::Dec 37: 38: // Texture coordinates 39: in vec2 tcoordMC; out vec2 tcoordVCVSOutput; 40: 41: // Apple Bug 42: //VTK::PrimID::Dec 43: 44: uniform mat4 WCVCMatrix; // World to view matrix 45: 46: void main() 47: { 48: // Apple Bug 49: //VTK::PrimID::Impl 50: 51: gl_Position = WCVCMatrix*vertexWC; 52: tcoordVCVSOutput = tcoordMC; 53: //VTK::Color::Impl 54: }2023-07-31 21:33:35.665 ( 0.152s) [ C7314880] vtkShaderProgram.cxx:438 ERR| vtkShaderProgram (0x563c2b250fb0): 0:1(10): error: GLSL 1.50 is not supported. Supported versions are: 1.10, 1.20, and 1.00 ES2023-07-31 21:33:35.665 ( 0.152s) [ C7314880] vtkShaderProgram.cxx:437 ERR| vtkShaderProgram (0x563c2b246170): 1: #version 150 2: #ifndef GL_ES 3: #define highp 4: #define mediump 5: #define lowp 6: #endif // GL_ES 7: #define attribute in 8: #define varying out 9: 10: in vec4 ndCoordIn; 11: in vec2 texCoordIn; 12: out vec2 texCoord; 13: void main() 14: { 15: gl_Position = ndCoordIn; 16: texCoord = texCoordIn; 17: }2023-07-31 21:33:35.665 ( 0.152s) [ C7314880] vtkShaderProgram.cxx:438 ERR| vtkShaderProgram (0x563c2b246170): 0:1(10): error: GLSL 1.50 is not supported. Supported versions are: 1.10, 1.20, and 1.00 ES2023-07-31 21:33:35.665 ( 0.152s) [ C7314880]vtkOpenGLVertexArrayObj:265 ERR| vtkOpenGLVertexArrayObject (0x563c2b7bf8b0): attempt to add attribute without a program for attribute ndCoordIn 2023-07-31 21:33:35.665 ( 0.152s) [ C7314880]vtkOpenGLQuadHelper.cxx:62 WARN| Error binding ndCoords to VAO. 2023-07-31 21:33:35.665 ( 0.152s) [ C7314880]vtkOpenGLRenderWindow.c:932 ERR| vtkXOpenGLRenderWindow (0x563c2ae6cf10): Couldn't build the shader program for depth blits 段错误 (核心已转储) -
核心报错信息:vtkShaderProgram (0x563c2b246170): 0:1(10): error: GLSL 1.50 is not supported. Supported versions are: 1.10, 1.20, and 1.00 ES
-
可能的解决方案:在Ubuntu虚拟机中运行OpenGL程序时,可能会遇到一些限制,因为虚拟机可能无法直接访问主机系统的显卡硬件。这可能导致OpenGL实现不支持较高版本的GLSL。要解决这个问题,您可以尝试以下方法:
- 启用3D加速:确保您的虚拟机软件(如VirtualBox、VMware等)已启用3D加速。这通常可以在虚拟机设置的显示或图形部分找到。启用3D加速后,虚拟机将尝试使用主机系统的显卡来提供更好的OpenGL支持。
-
安装虚拟机工具:确保您已安装了虚拟机软件提供的增强工具(如VirtualBox Guest Additions、VMware Tools等)。这些工具通常包含了针对虚拟机优化的图形驱动程序,可以提高OpenGL性能和兼容性。
-
使用软件渲染(我是通过这个解决的):如果您无法启用3D加速或安装虚拟机工具,您可以尝试使用软件渲染。这将使用CPU而不是GPU来渲染OpenGL图形,性能可能较差,但可以提供更广泛的GLSL支持。在Ubuntu中,您可以安装Mesa的软件渲染器,例如llvmpipe。要安装llvmpipe,请运行以下命令:
sudo apt-get install libgl1-mesa-swx11 -
安装完成后,您可以通过设置
LIBGL_ALWAYS_SOFTWARE=1环境变量来强制使用软件渲染:export LIBGL_ALWAYS_SOFTWARE=1
相关文章:
《视觉SLAM十四讲》报错信息和解决方案
文章目录 ch4-Sophus编译报错ch5/imageBasics安装opencv4.x报错ch5/joinMap/CMakeLists.txt编译报错ch5/joinMap-pcl_viewer map.pcd报错 ch4-Sophus编译报错 报错信息: error: lvalue required as left operand of assignmentunit_complex_.real() 1.;^~ error:…...
golang 设置http请求代理
tinypoxy 搭建http代理服务可参考:tinyproxy搭建http代理_wangxiaoangg的博客-CSDN博客 需求背景: 项目需要访问一国外服务接口,地址被墙。购买香港ecs服务器,并在上面搭建http代理服务。 一 使用http和https代理 func main() {pr…...
我的会议(会议通知)
前言: 我们在实现了发布会议功能,我的会议功能的基础上,继续来实现会议通知的功能。 4.1实现的特色功能: 当有会议要参加时,通过查询会议通知可以知道会议的内容,以及当前会议状态(未读) 4.2思路…...
css实现水平居中
代码示例 <div class"box"><div class"box1"></div> </div>1.弹性布局:(推荐) display:flex; 这些要添加在父级的,是父级的属性 //父级添加display:flex; //父级添加jus…...
c刷题(一)
目录 1.输出100以内3的倍数 2.将3个数从大到小输出 3.打印100~200素数 方法一 方法二 4.显示printf的返回值 最大公约数 试除法 辗转相除法 九九乘法表 求十个数的最大值 1.输出100以内3的倍数 法一: int n 0; while (n*3 < 100){printf("%d &q…...
webpack
文章目录 webpack概念打包的场景为什么要打包在打包之外 - 翻译在打包之外 - 小动作 课程重点模块化利用立即执行函数来改变 作用域模块化的优点模块化方案的进化史AMD(成型比较早,应用不是很广泛)COMMONJSES6 MODULE webpack 的打包机制webp…...
反复 Failed to connect to github.com port 443 after xxx ms
前提:使用了代理,浏览器能稳定访问github,但git clone一直超时 解决方案: 1. git config --global http.proxy http://127.0.0.1:1080 2. 代理设置端口1080 3. 1080可自定义 感谢来自这篇博客和评论区的提醒:解决…...
ARM裸机-11
1、安装交叉编译工具工具 1.1、windows中装软件的特点 windows中装软件使用安装包,安装包解压后有两种情况:一种是一个安装文件 (.exe/.msi),双击进行安装,下一步直到安装完毕。安装完毕后会在桌面上生成快捷方式,我们平时使用快…...
centos7升级glibc
作者:吴业亮 博客:wuyeliang.blog.csdn.net 安装bison: yum install bison -y安装wget、bzip2、gcc、gcc-c和glibc-headers: yum -y install wget bzip2 gcc gcc-c glibc-headers安装make-4.2.1: wget http://ftp.…...
【OnnxRuntime】在linux下编译并安装C++版本的onnx-runtime
目录 安装C接口的onnx-runtime安装依赖项:下载源文件构建ONNX Runtime安装ONNX Runtime 安装C接口的onnx-runtime 安装依赖项: 安装CMake:可以通过包管理器(如apt、yum等)安装CMake。 安装C编译器:确保系…...
C#基于OpenCv(OpenCvSharp) 的 fftshift, ifftshift 函数的实现
本文实现基于OpenCv(OpenCvSharp) 的 fftshift, ifftshift 函数。 fftshift 函数将信号频谱的零频分量移动到数组中心, 本质是分别对调一三象限数据。 ifftshift完成相反的操作,本质是二四象限的数据块。 OpenCV中没有这两个函数如果使用需要自己实现。 实现代码如下: …...
【SpringBoot】笔记2
文章目录 45、web实验-抽取公共页面46、web实验-遍历数据与页面bug修改47、视图解析-【源码分析】-视图解析器与视图[暂时没看]48、拦截器-登录检查与静态资源放行49、拦截器-【源码分析】-拦截器的执行时机和原理50、文件上传-单文件与多文件上传的使用51、文件上传-【源码流程…...
Spring事务传播机制详细讲解
文章目录 一、事务传播机制1. REQUIRED:2. SUPPORTS:3. MANDATORY:4. REQUIRES_NEW:5. NOT_SUPPORTED:6. NEVER:7. NESTED: 二、事务传播机制分类1. 支持当前事务的传播机制:REQUIRE…...
kubernetes 集群搭建(kubeadm 方式)
目前生产部署 Kubernetes 集群主要有两种方式: (1) kubeadm Kubeadm 是一个 Kubernetes 官方提供的命令行工具,可以用来部署和管理 Kubernetes 集群。它主要用于在新的 Kubernetes 环境中初始化集群、添加或删除节点等操作。 K…...
基于ARM+FPGA的驱控一体机器人控制器设计
目前市场上工业机器人,数控机床等多轴运动控制系统普遍采用运动控制器加 伺服驱动器的分布式控制方式。在这种控制方式中,控制器一方面完成人机交互,另 一方面进行 NC 代码的解释执行,插补运算,继而将计算出来的位…...
docker 安装 字体文件
先说一下我当前的 场景 及 环境,这样同学们可以先评估本篇文章是否有帮助。 环境: dockerphp8.1-fpmwindows 场景: 来了个需求,有一个默认背景图,可以理解为背景图是一个 "相框",相框里面就会放…...
Vue.js与ASP.NET的结合,实现企业级应用的开发和部署
在当今快速发展的互联网技术领域,企业级应用的开发和部署变得越来越重要。Vue.js和ASP.NET是两个在前端和后端开发中广泛使用的技术,将它们结合起来可以为企业级应用的开发和部署带来诸多优势。本文将通过代码示例介绍如何使用Vue.js和ASP.NET进行企业级…...
Uncaught SyntaxError: ‘‘ string literal contains an unescaped line break
今天在修改前端页面的时候,页面报错了,提示了这个信息 Uncaught SyntaxError: string literal contains an unescaped line break 问题指向这行代码,这就是通过JS渲染一个easyui的搜索框,仔细确认之后,发现没有任何问…...
Vue3+Vite+TypeScript常用项目模块详解
目录 1.Vue3ViteTypeScript 概述 1.1 vue3 1.1.1 Vue3 概述 1.1.2 vue3的现状与发展趋势 1.2 Vite 1.2.1 现实问题 1.2 搭建vite项目 1.3 TypeScript 1.3.1 TypeScript 定义 1.3.2 TypeScript 基本数据类型 1.3.3 TypeScript语法简单介绍 2. 项目配置简单概述 2.…...
数字电路(一)
1、例题 1、进行DA数模转换器选型时,一般要选择主要参数有( A)、转换精度和转换速度。 A、分辨率 B、输出电流 C、输出电阻 D、模拟开关 2、下图所示电路的逻辑功能为( B) A、与门 B、或门 C、与非门 D、或非门 分析该…...
2026春SDU软件创新实训第四周个人工作总结
第四周我做的工作总结如下: 从原始网页爬取科一科四题库 书接上期,我们找到了两个网页的题库(驾照吧(https://www.jiazhaoba.com/tiba)元贝驾考(https://www.ybjk.com/tiku))&…...
硬币凑钱--动态规划--完全背包的变式
1.硬币凑钱import java.util.Scanner;// 注意类名必须为 Main, 不要有任何 package xxx 信息 public class Main {public static void main(String[] args) {Scanner sc new Scanner(System.in);int nsc.nextInt();//背包问题的其中一种int[] dpnew int[n1];for(int i1;i<n…...
Wan2.1 VAE与微信小程序开发结合:打造个人AI头像生成工具
Wan2.1 VAE与微信小程序开发结合:打造个人AI头像生成工具 你有没有想过,用一张自己的照片,就能快速生成几十种不同风格的艺术头像?无论是动漫风、油画感,还是赛博朋克,都能一键搞定。以前这可能需要专业的…...
从MATLAB验证到FPGA上板:双频信号叠加的完整开发闭环实战
从MATLAB验证到FPGA上板:双频信号叠加的完整开发闭环实战 在数字信号处理领域,实现双频信号的精确叠加是一个常见但极具挑战性的任务。无论是通信系统中的载波调制,还是音频处理中的音效合成,都需要工程师能够准确地在硬件层面实现…...
5个维度深度评估:哪款内容解锁工具真正值得投入时间?
5个维度深度评估:哪款内容解锁工具真正值得投入时间? 【免费下载链接】bypass-paywalls-chrome-clean 项目地址: https://gitcode.com/GitHub_Trending/by/bypass-paywalls-chrome-clean 在数字信息时代,付费墙已成为内容获取的主要障…...
软文SEO的常见指标有哪些_如何撰写有吸引力的软文标题
<h2>软文SEO的常见指标有哪些</h2> <p>在当今的数字营销领域,软文(Soft Article)已经成为推动网站流量和品牌知名度的重要工具。要让软文真正发挥作用,我们必须了解软文SEO的常见指标,这些指标可以帮…...
Windows 11 + CUDA 11.7 环境下,TensorRT 8.5.2.2 保姆级安装与配置避坑指南
Windows 11 CUDA 11.7 环境下 TensorRT 8.5.2.2 终极安装指南 刚接触深度学习推理优化的开发者,往往会在环境配置阶段耗费大量时间。TensorRT作为NVIDIA官方推出的高性能推理库,能够显著提升模型在NVIDIA GPU上的运行效率。本文将手把手带你完成Windows…...
Qwen3-0.6B-FP8应用场景:开发者测试LLM应用前端UI兼容性的沙盒环境
Qwen3-0.6B-FP8应用场景:开发者测试LLM应用前端UI兼容性的沙盒环境 1. 引言:为什么需要一个轻量级的“测试沙盒”? 如果你正在开发一个基于大语言模型的应用,比如一个智能客服系统、一个文档助手,或者一个创意写作工…...
弦音墨影保姆级教程:解决‘视频加载失败’‘墨迹不跟随目标’等10类高频问题
弦音墨影保姆级教程:解决‘视频加载失败’‘墨迹不跟随目标’等10类高频问题 1. 系统简介与核心价值 「弦音墨影」是一款将人工智能技术与传统美学完美融合的视频分析工具。它采用水墨丹青的视觉风格,通过先进的Qwen2.5-VL多模态技术,让视频…...
从LED灯变化理解计算机移位运算:手把手教你用实验箱验证带进位左移
从LED灯变化理解计算机移位运算:手把手教你用实验箱验证带进位左移 在计算机组成原理的学习中,移位运算是一个看似简单却蕴含深度的概念。当我们面对抽象的二进制数字在寄存器中"移动"时,往往难以形成直观理解。而通过实验箱上的L…...
