码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • ros2与windows入门教程-编译ROS2包


      系列文章目录

    • ros2与windows入门教程-windows上安装ROS2 foxy

    • ros2与windows入门教程-控制小乌龟

    • ros2与windows入门教程-监听和发布话题

    • ros2与windows入门教程-编译ROS2包

    • ros2与windows入门教程-ROS2 导航Navigation2

    • ros2与windows入门教程-修改域Domain_ID

    • ros2与windows入门教程-控制walking机器人移动

    • ros2与windows入门教程-创建工作空间和功能包

    • ros2与windows入门教程-使用rviz2

    • ros2与windows入门教程-slam_toolbox算法建图

    • ros2与windows入门教程-融合建图和导航


    说明:

    • 介绍如何在windows系统上编译ROS2包

    前提条件:

    • 已安装windows 10系统

    步骤:

    • 安装visual studio 2019,参考

    • 安装chocolatey,参考

    • 安装以下环境时,以管理员身份,新建cmd命令提示符,运行以下命令

    • 安装git

    choco upgrade git -y
    
    • 安装curl

      • 下载地址:https://curl.se/download.html
      • 在最底部找到Windows的版本,下载的版本是curl-7.83.1_3-win64-mingw
      • curl可执行文件的路径为 C:\tools\curl-7.83.1_3-win64-mingw\curl-7.83.1_3-win64-mingw\bin
      • 新建系统变量CURL_HOME,内容即curl.exe的所在目录;然后修改系统变量path,在最前部加入%CURL_HOME%;
      • 检查环境变量配置是否成功
    1. curl
    2. curl: try 'curl --help' for more information
    3. curl --help
    • 安装cmake
    choco install -y cmake
    

    CMake bin文件路径C:\Program Files\CMake\bin添加到系统环境的PATH

    • 安装python3.8.3
    choco install -y python --version 3.8.3
    
    • 从GitHub存储库下载这些包

      asio.1.12.1.nupkg
      bullet.2.89.0.nupkg
      cunit.2.1.3.nupkg
      eigen-3.3.4.nupkg
      tinyxml-usestl.2.6.2.nupkg
      tinyxml2.6.0.0.nupkg
      log4cxx.0.10.0.nupkg

    choco install -y -s TO\DOWNLOADS\> asio cunit eigen tinyxml-usestl tinyxml2 log4cxx bullet
    

    为您将软件包下载到的文件夹

    • 安装python依赖
    1. python -m pip install --upgrade pip
    2. python -m pip install -U catkin_pkg cryptography empy ifcfg importlib-metadata lark-parser lxml matplotlib netifaces numpy opencv-python PyQt5 pip pillow psutil pycairo pydot pyparsing pyyaml rosdistro setuptools
    • 安装graphviz,以便运行rqt_graph
    choco install graphviz
    
    • 安装OpenCV,下载OpenCV 3.4.6 的预编译版本,将其解压缩为C:\opencv,以管理员身份打开命令提示符cmd,运行以下命令
    setx /m OpenCV_DIR C:\opencv
    

    将opencv的路径C:\opencv\x64\vc16\bin,添加到系统环境的PATH

    • 安装qt5,从Qt网站下载5.12.X offline installer,下载的版本是qt-opensource-windows-x86-5.12.12
      先断网,再安装,运行安装程序,选择Qt -> Qt 5.12.12 -> MSVC 2017 64-bit
    1. setx /m Qt5_DIR C:\Qt\Qt5.12.12\5.12.12\msvc2017_64
    2. setx /m QT_PLUGIN_PATH C:\Qt\Qt5.12.12\5.12.12\msvc2017_64\plugins
    3. setx /m QT_QPA_PLATFORM_PLUGIN_PATH C:\Qt\Qt5.12.12\5.12.12\msvc2017_64\plugins\platforms
    4. pip install -U pydot PyQt5
    • 安装Visual C++ Redistributables
    choco install -y vcredist2013 vcredist140
    
    • 安装OpenSSL,Win64 OpenSSL v1.1.1o EXE

      • 下载地址:https://slproweb.com/products/Win32OpenSSL.html

      • 安装路径为:C:\Program Files\OpenSSL-Win64\bin
        新建系统变量OPENSSL_HOME,内容即openssl.exe的所在目录;然后修改系统变量path,在最前部加入%OPENSSL_HOME%;

    • 创建工作空间

    1. cd c:\
    2. mkdir c:\nav2_ws\src
    • 下载Robotis Turtlebot3 Navigation2 源
    1. call C:\opt\ros\foxy\x64\local_setup.bat
    2. pushd c:\nav2_ws
    3. curl -o nav2.repos https://raw.githubusercontent.com/ms-iot/ROSOnWindows/master/docs/ros2/navigation2_foxy.repos
    4. git config --global http.sslVerify "false"
    5. vcs import src < nav2.repos
    • 编译nav2_ws工作空间,新建一个cmd命令提示符,运行以下命令
    1. pushd C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Auxiliary\Build\
    2. call vcvars64.bat
    3. pushd c:\nav2_ws
    4. call C:\opt\ros\foxy\x64\local_setup.bat
    5. call c:\opt\ros\foxy\x64\share\gazebo\setup.bat
    6. set "SDF_PATH=c:\opt\ros\foxy\x64\share\sdformat\1.6"
    7. colcon build
    • 需要单独编译turtlebot3_gazebo包
    colcon build --packages-select turtlebot3_gazebo --cmake-args "-Wno-dev"
  • 相关阅读:
    ArrayList和LinkedList区别
    C语言函数复习全解析:参数、无参、嵌套与递归
    机器学习强基计划1-1:图文详解感知机算法原理+Python实现
    希尔排序算法
    JAVASE语法零基础——抽象类和接口
    Numpy-02(索引、数组常用操作)
    使用 SAP ABAP 代码生成 PDF 文件,填充以业务数据并显示在 SAPGUI 里
    操作系统复习:进程间通信与常见IPC问题
    公司软文怎么写?如何写好软文?
    GMT 格式 转 标准日期格式
  • 原文地址:https://blog.csdn.net/ncnynl/article/details/125786558
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号