Edison install ROS in two method

USE yocto make image

NOTE: THIS PART IS UNFINISHED!!

in your edison yocto BSP path get ROS layer from git

git clone https://github.com/bmwcarit/meta-ros.git   

and you can read the README.md to get details about meta-ros

edit edison_image.bb
add this:

IMAGE_INSTALL += "roslaunch catkin roscpp-tutorials cv-bridge packagegroup-ros-comm"

edit bblayers.conf
add

 /path/to/meta-intel-edison/meta-ros \

below this line

BBLAYERS ?= " \

but finally i find something in rootfs generated in host linux PC do not exist in edison rootfs.
there could be some mechanism in yocto that i don’t pay attention
i will find in manual for do_rootfs.
because of this, it need to copy many files to board and export some env
I managed to run ros in board >_<

USE Source install

My zynq board installed ROS indigo and it sounds like there are some problem when communicate between two different version ROS .so i installed ROS indigo in edsion.

First add

IMAGE_INSTALL += "boost-dev"

in edison-image.bb
btw i change the rootfs size to 2048M
or you can use opkg follow this :
https://communities.intel.com/thread/55692

opkg install boost-dev

and now to install ROS depend libs
What i have installed will list behind.

python lib
wget http://peak.telecommunity.com/dist/ez_setup.py 
python ez_setup.py
easy_install pip
pip install -U empy 
pip install -U nose
console_bridge

install console_bridge package

 git clone git://github.com/ros/console_bridge.git
 cd console_bridge
 cmake .
 make
 make install
TinyXML

you can use apt-get libtinyxml-dev in debian-base OS

i take a lot time to get it work…
ROS need libtinyxml not libtinyxml2

first get source from

wget http://ftp.th.debian.org/debian/pool/main/t/tinyxml/tinyxml_2.6.2.orig.tar.gz

then uncompress then get in source path
create a CMakeLists.txt file

cmake_minimum_required(VERSION 2.6)

project(TinyXml)

set(LIBRARY_OUTPUT_PATH lib/${CMAKE_BUILD_TYPE})

include_directories(./)

file(
    GLOB_RECURSE
    source_files
    *.h
    *.cpp
)

add_library(
    tinyxml
    SHARED
    ${source_files}
)

#SET_TARGET_PROPERTIES (tinyxml PROPERTIES DEFINE_SYMBOL  "EXPORT" )

INSTALL( FILES tinyxml.h tinystr.h DESTINATION include/ )
INSTALL( FILES lib/libtinyxml.so DESTINATION lib/ )

NOTE
add #define TIXML_USE_STLin tinyxml.h
END NOTE
to cmake make make install get libtinyxml.so in /usr/local/lib

lz4
git clone https://github.com/Cyan4973/lz4.git
cd lz4/lib
make 
make install
FINAL

set ROS_OS_OVERRIDE
Format: “OS_NAME:OS_VERSION_STRING” This will force it to detect Ubuntu Lucid:
export ROS_OS_OVERRIDE=ubuntu:10.04
If defined, this will override the autodetection of an OS. This can be useful when debugging rosdep dependencies on alien platforms, when platforms are actually very similar and might need be forced, or of course if the autodetection is failing

in /etc/profile

export ROS_OS_OVERRIDE=ubuntu:14.04  

It works well

Follow this

http://wiki.ros.org/indigo/Installation/Source

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值