新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > ROS在ARM上的編譯

        ROS在ARM上的編譯

        作者: 時間:2013-12-04 來源:網絡 收藏

          3、源碼

          按照教程上說的進行依賴包的安裝:

          rosdep install --from-paths src --ignore-src --rosdistro groovy -y

          然后應該還需要安裝cmake(我之前就已經安裝好了,不知道是不是應該在這一步)。我是從官網下載的源碼(http://www.cmake.org/),然后在arm上的。安裝方法參考鏈接(http://hi.baidu.com/phpbooker/item/38ca262ed599d10c73863e05),arm上太慢了,用了將近一個小時,不知道可不可以在PC上交叉編譯,不做深究了。

          接下來就是最重要的過程了——編譯。這個過程是痛苦而漫長的,arm板的主頻慢,編譯一次代碼需要20分鐘左右,而且每次出錯總是在編譯了好長時間之后,各種依賴的包需要安裝。如果現在進行編譯,肯定會出現一大堆錯誤,可以根據這些錯誤進行一步步的處理,基本都是所依賴的包沒有安裝。其中最重要的就是boost庫的包。因為中很多的代碼是使用C++寫的,都使用了boost靜態庫,所以必須在arm中的ubuntu系統中安裝boost庫。boost庫是我糾結時間最長的一個問題,我使用了各種各樣的方法進行安裝:

          (1)直接apt-get安裝

          (2)下載源碼在PC機上交叉編譯然后放到arm中

          (3)直接下載官方針對arm架構已經編譯好的deb包進行安裝(https://launchpad.net/ubuntu/+source/boost1.46/1.46.1-7ubuntu3/+build/3060825)

          至于boost庫的版本,我也嘗試過很多,從1.40到1.52,最后還是第三種方法靠譜,前兩種方法安裝完成后在編譯過程中總是會報錯說找不到boost中的某個庫。打開上面的鏈接,會有一個boost庫的列表:

        ROS在ARM上的編譯

          我是把上面的包全部一個一個下載安裝了,基本也是相互依賴的。安裝過程中可能還是會有一些其他依賴的包,都可一使用pip或者easy_install進行安裝。

          到現在為止,終于可以開始編譯、安裝了:

          ./src/catkin/bin/catkin_make_isolated --install --install-space /opt/ros/groovy

          如果一切正常,而是分鐘后就匯編一安裝結束了。

          添加環境路徑:

          source /opt/ros/groovy/setup.bash

          echo "export _PACKAGE_PATH=~/ros_workspace:$_PACKAGE_PATH" >> ~/.bashrc

          echo "export ROS_WORKSPACE=~/ros_workspace" >> ~/.bashrc

          . ~/.bashrc

          終于安裝完成了,在終端中輸入“roscore”,看一下是否正常運行了。在這一步,我這里出現了一個錯誤:

          what(): locale::facet::_S_create_c_locale name not valid

          后來使用google解決了(http://cruisever.blog.163.com/blog/static/786117572010817112310741/),加入:

          export LC_ALL="C"

          終于可以正常運行了。進行了簡單的talker和listener的測試,一切正常,雖然運行著實有點慢,但是初步移植應該完成了,后面應該還有更多問題等著我的。

        c++相關文章:c++教程



        上一頁 1 2 下一頁

        關鍵詞: ROS ARM 編譯

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 儋州市| 东港市| 宁夏| 东乡县| 云梦县| 双鸭山市| 定兴县| 北流市| 临夏县| 剑阁县| 且末县| 仙桃市| 昌平区| 克什克腾旗| 龙州县| 宜州市| 惠来县| 宝丰县| 大丰市| 弋阳县| 房产| 宁安市| 霸州市| 尉犁县| 湖北省| 宁波市| 康乐县| 伊川县| 宁强县| 巴林左旗| 曲周县| 临高县| 庄浪县| 商城县| 冕宁县| 日土县| 前郭尔| 高清| 阜平县| 湖州市| 竹山县|