当前位置: 首页 > news >正文

Windows Docker运行Implicit-SVSDF-Planner

 Windows Docker运行GitHub - ZJU-FAST-Lab/Implicit-SVSDF-Planner: [SIGGRAPH 2024 & TOG]

 1. 设置环境

我将项目git clone在D:/Github目录中。

下载ubuntu20.04 noetic镜像

docker pull osrf/ros:noetic-desktop-full-focal

 启动容器,挂载主机的D:/Github文件夹为/home,并将容器初始进入的路径设为/home。

docker run -dit -v D:/Github:/home -w /home --name noetic osrf/ros:noetic-desktop-full-focal

进入容器并编译项目:

docker exec -it noetic bash
source /opt/ros/noetic/setup.bash
cd Implicit-SVSDF-Planner/
./build.sh

报错1:

root@18267cd27b32:/home/Implicit-SVSDF-Planner# ./build.sh bash: ./build.sh: /bin/bash^M: bad interpreter: No such file or directory

将win字符转译为unix

sed -i 's/\r$//' build.sh

报错2:

Compilation failed due to link of gfortran. You should refer to https://askubuntu.com/questions/276892/cannot-find-lgfortran or use ubuntu20 instead

安装包解决:

sudo apt update
sudo apt install gfortran

 编译结束

2. 运行

source /opt/ros/noetic/setup.bash
cd Implicit-SVSDF-Planner/
source devel/setup.bash
export DISPLAY=host.docker.internal:0
roslaunch plan_manager run_sdTunnel.launch

使用VcXsrv可视化时出现了rviz的报错,参考以下使用MobaXterm完成运行。

win10 下 wsl2 使用 rviz 报错 Segmentation fault 段错误 (核心已转储) 的另一可能解决方案_rviz启动报错segmentation fault-CSDN博客

测试gpu但发现没有区别的运行代码:

docker run -dit -v D:/Github:/home -w /home --gpus all -e DISPLAY=host.docker.internal:0.0 -v /tmp/.X11-unix:/tmp/.X11-unix --network=host --privileged -it --name testrviz ros:noetic bash

 3. 保存镜像

docker commit noetic my_new_image:latest

http://www.lryc.cn/news/538872.html

相关文章:

  • ELK安装部署同步mysql数据
  • Vision Transformer图像分块嵌入核心技术解析:从数学推导到工业级应用
  • 【产品资料】陀螺匠·企业助手v1.8 产品介绍
  • 深度求索-DeepSeek-R1本地部署指南
  • 代码随想录day12
  • 告别第三方云存储!用File Browser在Windows上自建云盘随时随地访问
  • Ubuntu 下 nginx-1.24.0 源码分析 - NGX_MAX_ALLOC_FROM_POOL
  • PyQt6/PySide6 的 SQL 数据库操作(QtSql)
  • 利用IDEA将Java.class文件反编译为Java文件:原理、实践与深度解析
  • Kafka偏移量管理全攻略:从基础概念到高级操作实战
  • 【R语言】GitHub Copilot安装-待解决
  • 软件定义汽车时代的功能安全和信息安全
  • qt的QSizePolicy的使用
  • 简单几个步骤完成 Oracle 到金仓数据库(KingbaseES)的迁移目标
  • DeepSeek自动化写作软件
  • 【kafka系列】Kafka如何实现高吞吐量?
  • learn_pytorch03
  • 机器学习:k近邻
  • redis之lua实现原理
  • [Android] 【汽车OBD软件】Torque Pro (OBD 2 Car)
  • 安全问答—安全的基本架构
  • Java 运行时常量池笔记(详细版
  • mysql增加字段操作以及关键字报错
  • Wireshark 输出 数据包列表本身的值
  • 日常开发中,使用JSON.stringify来实现深拷贝的坑
  • 【探商宝】:大数据与AI赋能,助力中小企业精准拓客引
  • Javascript网页设计案例:通过PDF.js实现一款PDF阅读器,包括预览、页面旋转、页面切换、放大缩小、黑夜模式等功能
  • 各类系统Pycharm安装教程
  • 哈希表(C语言版)
  • 内容中台驱动企业数字化内容管理高效协同架构