色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

剖析ROS編譯教程

jf_78858299 ? 來源:云深之無跡 ? 作者:云深之無跡 ? 2023-05-19 17:01 ? 次閱讀

ROS的編譯和安裝還是稍微有點門檻的,這篇文章簡單的記錄一下。

圖片

ROS功能包的安裝

https://github.com/TonyRobotics/RoboWare

圖片

一個合適的IDE,我看了一下是VSCode的魔改

圖片

編譯的框圖

ROS對CMake進行了擴展,于是便有了Catkin編譯系統(tǒng)。

Catkin是基于CMake的編譯構(gòu)建系統(tǒng),具有以下特點:

  • Catkin沿用了包管理的傳統(tǒng)像 find_package()基礎(chǔ)結(jié)構(gòu),pkg-config
  • 擴展了CMake,例如
    • 軟件包編譯后無需安裝就可使用
    • 自動生成find_package()代碼,pkg-config文件
    • 解決了多個軟件包構(gòu)建順序問題

一個Catkin的軟件包(package)必須要包括兩個文件:

  • package.xml: 包括了package的描述信息
    • name, description, version, maintainer(s), license
    • opt. authors, url's, dependencies, plugins, etc...
  • CMakeLists.txt: 構(gòu)建package所需的CMake文件
    • 調(diào)用Catkin的函數(shù)/宏
    • 解析package.xml
    • 找到其他依賴的catkin軟件包
    • 將本軟件包添加到環(huán)境變量

圖片

這個是我手邊的一個典型的目錄

圖片

其中一個功能包的結(jié)構(gòu)

catkin編譯的工作流程如下:

  1. 首先在工作空間catkin_ws/src/下遞歸的查找其中每一個ROS的package。
  2. package中會有package.xmlCMakeLists.txt文件,Catkin(CMake)編譯系統(tǒng)依據(jù)CMakeLists.txt文件,從而生成makefiles(放在catkin_ws/build/)。
  3. 然后make剛剛生成的makefiles等文件,編譯鏈接生成可執(zhí)行文件(放在catkin_ws/devel)。

也就是說,Catkin就是將cmakemake指令做了一個封裝從而完成整個編譯過程的工具。catkin有比較突出的優(yōu)點,主要是:

  • 操作更加簡單
  • 一次配置,多次使用
  • 跨依賴項目編譯

圖片

xml文件是一些項目的基本信息,就是版本號,描述什么的

圖片

就是這樣

圖片

比對的看

圖片

一些常見的編譯命令

圖片

編譯流程

圖片

編譯系統(tǒng)會遞歸查找

圖片

圖片

圖片

這是常見的ROS命令

圖片

因為Cmake是常客,這里也有Cmake的一個常見函數(shù)的說明

圖片

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 編譯系統(tǒng)
    +關(guān)注

    關(guān)注

    0

    文章

    10

    瀏覽量

    8864
  • ROS
    ROS
    +關(guān)注

    關(guān)注

    1

    文章

    278

    瀏覽量

    17004
  • CMake
    +關(guān)注

    關(guān)注

    0

    文章

    28

    瀏覽量

    1271
收藏 人收藏

    評論

    相關(guān)推薦

    ROS系統(tǒng)是什么?ROS系統(tǒng)主要特點有哪些?創(chuàng)龍RK3568J+Debian的ROS2系統(tǒng)案例

    了操作系統(tǒng)應(yīng)有的服務(wù),包括硬件抽象,底層設(shè)備控制,常用函數(shù)的實現(xiàn),進程間消息傳遞,以及包管理。它也提供用于獲取、編譯、編寫、和跨計算機運行代碼所需的工具和庫函數(shù)。 隨著工業(yè)智能化的快速發(fā)展,智能機器人設(shè)備已成為工業(yè)自動化體系的佼佼者,而智能機器人設(shè)備核心—ROS系統(tǒng),是
    的頭像 發(fā)表于 11-30 14:41 ?4630次閱讀
    <b class='flag-5'>ROS</b>系統(tǒng)是什么?<b class='flag-5'>ROS</b>系統(tǒng)主要特點有哪些?創(chuàng)龍RK3568J+Debian的<b class='flag-5'>ROS</b>2系統(tǒng)案例

    【UT4418申請】移植ubuntu的ROS版本,重新編譯基于a8的智能網(wǎng)關(guān)到此平臺

    功的tiny210,但是還是不怎么樣,系統(tǒng)本身很多問題,別說運行ROS了&項目描述:&lt;1&gt;學(xué)習(xí)并且編譯安裝ubuntu系統(tǒng),其中包括
    發(fā)表于 11-02 11:02

    如何移植ROS程序到Android

    在Android上運行ROS程序一般使用rosjava-android。但是也可以直接利用NDK編譯成so文件移植到Android上。當(dāng)然移植過程也并不簡單。 下面是一個簡單的例子。安裝cmake
    發(fā)表于 05-16 19:20

    ROS與STM32是如何進行通信的

    角速度、實際線速度STM32端ROS端之前運行的ROS項目都是在終端編譯,用vim或者gedit修改代碼,很不方便,函數(shù)跳轉(zhuǎn)查看都沒辦法實現(xiàn)。所以今天先安裝一個IDE試試ROS官網(wǎng)上有
    發(fā)表于 08-11 07:25

    什么是ROS?如何學(xué)習(xí)ROS

    什么是ROS?如何學(xué)習(xí)ROS
    發(fā)表于 11-11 07:21

    如何利用RK1808去搭建一種ROS交叉編譯環(huán)境呢

    如何利用RK1808去搭建一種ROS交叉編譯環(huán)境呢?其方法是什么?
    發(fā)表于 02-15 06:32

    ROS放到RK3326板上編譯時出現(xiàn)的問題有哪些呢

    ROS放到RK3326板上編譯時出現(xiàn)的問題有哪些呢?怎樣去解決?
    發(fā)表于 02-17 06:08

    RK3308-CC-PLUS板子啟用ROS模塊后交叉編譯,menuconfig中沒有ROS選項怎么解決?

    RK3308-CC-PLUS板子啟用ROS模塊后交叉編譯,menuconfig中沒有ROS選項怎么解決?
    發(fā)表于 03-09 06:23

    怎樣通過Arduino IDE直接使用ROS提供的一些特性呢

    :可以把jade替換為你安裝的版本:如indigo。嘗試了上面的指令,沒有成功,可能和ROS編譯安裝的有關(guān)吧,也不是很確定。只能通過源碼編譯安裝。在下面的指令中,代表你的catkin工作空間。注意
    發(fā)表于 07-06 11:49

    在FirePrime開發(fā)板上編譯安裝ROS jade

    學(xué)習(xí)系列 -- 樹莓派編譯安裝完整版本ROS  解決過程如下:  創(chuàng)建新目錄,下載并編譯這個包。  當(dāng)checkinstall詢問是否改變安裝選項時,選擇[2],將名字從“collada-dom
    發(fā)表于 07-07 11:21

    ROS在Zedboard上的移植

    : Zedboard ARM處理器 : Cortex-A9 ARM操作系統(tǒng): Linaro 12.11 ROS版本: indigo 移植前提 1. 開發(fā)板可以連接網(wǎng)絡(luò) 2. 使用SSH等對開發(fā)板進行遠程控制 編譯方法
    發(fā)表于 10-26 11:52 ?1093次閱讀

    ROS與STM32通信

    角速度、實際線速度STM32端ROS端之前運行的ROS項目都是在終端編譯,用vim或者gedit修改代碼,很不方便,函數(shù)跳轉(zhuǎn)查看都沒辦法實現(xiàn)。所以今天先安裝一個IDE試試ROS官網(wǎng)上有
    發(fā)表于 12-24 19:00 ?11次下載
    <b class='flag-5'>ROS</b>與STM32通信

    如何配置ROS驅(qū)動功能包

    配置ROS驅(qū)動功能包 將WHEELTEC 100N的 ROS_SDK 保存在工作空間的src文件夾下。 通過 catkin_make 進行編譯。 剛裝的ros環(huán)境會報錯,如下: Mak
    的頭像 發(fā)表于 11-22 18:13 ?1270次閱讀
    如何配置<b class='flag-5'>ROS</b>驅(qū)動功能包

    ros的基本概念是什么

    基本概念: ROS是一個用于在不同進程間匿名的發(fā)布、訂閱、傳遞信息的中間件。 ROS2系統(tǒng)的核心部分是ROS網(wǎng)絡(luò)(ROS Graph)。 ROS
    的頭像 發(fā)表于 11-27 11:21 ?1792次閱讀

    AI編譯器技術(shù)剖析

    隨著人工智能技術(shù)的飛速發(fā)展,AI編譯器作為一種新興的編譯技術(shù)逐漸進入人們的視野。AI編譯器不僅具備傳統(tǒng)編譯器的功能,如將高級語言編寫的源代碼轉(zhuǎn)換為機器可執(zhí)行的代碼,還融入了人工智能技術(shù)
    的頭像 發(fā)表于 07-17 18:28 ?1620次閱讀
    主站蜘蛛池模板: younv 学生国产在线视频| 色欲AV蜜臀AV在线观看麻豆| 好好的曰com久久| 国产精品99久久久久久AV色戒 | 年轻的女教师2017韩国在线看| 狠狠鲁快播| 国产专区亚洲欧美另类在线| 国产乱码精品一区二区三区四川| 国产AV亚洲精品久久久久软件| 成人短片迅雷下载| 成年视频xxxxxx在线| 超熟女专门志| 国产AV精品久久久免费看| 国产99RE在线观看69热| 国产成人cao在线| 国产精品99久久久久久WWW| 国产成人精品电影在线观看| 国产精品欧美一区二区在线看| 国产精品久久自在自2021| 国产精品伦理一二三区伦理| 国产精品一区二区在线观看| 国产午夜精品视频在线播放| 好男人好资源在线观看| 久久a级片| 美女被触手注入精子强制受孕漫画| 美女黄图大全| 欧洲另类一二三四区| 日韩精品亚洲专区在线影院| 私人玩物在线观看| 亚洲大片免费看| 亚洲欧美另类无码专区| 在线看免费毛片| aaa级黄影片| 高h 大尺度纯肉 np快穿| 国产精品无码亚洲网| 精品AV亚洲乱码一区二区| 空姐被黑人 苏晓曼| 欧美日韩亚洲一区视频二区| 色婷婷AV国产精品欧美毛片| 亚洲XXX午休国产熟女屁| 在线观看成人免费|