Ros on edison [Work in progress]

Version 5
Visibility: Open to anyone

    ROS installation on edison

     

    Thanks to bmwcarit there is a layer meta-ros for yocto : https://github.com/bmwcarit/meta-ros/ . But using it on a specific yocto plateform as edison is not straightforward. This document is made to gather my notes trying to build ipk and image.

     

    I'm currently building on debian wheezy.

     

    • TODO: finish to document the build of ros world
    • TODO: try to build an edison image with ros core/world installed ?
    • TODO: retry from scratch to document missing procedures

     

    Build without ros

     

    follow pdf (link ?)

     

    Missing instructions

     

    Building in a fresh lxc wget was not installed :

    apt-get install wget

    If not done configure git for your build user (else the build will fail):

    git config --global user.name "John Doe"

    git config --global user.email johndoe@example.com


    Clone additional layers

     

    # in edison-src/device-software :

    git clone git://git.openembedded.org/meta-openembedded

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

     

    Build roscore

    # in bblayers.conf add the full path to :

    YOURPATH/edison-src/device-software/meta-openembedded/meta-oe

    YOURPATH/edison-src/device-software/meta-ros

    bitbake core-image-ros-roscore

     

    Build ros world [WORK IN PROGRESS]

     

    Add layer meta-python from meta-openembedded

    # in bblayers.conf add the full path to :

    YOURPATH/edison-src/device-software/meta-openembedded/meta-python

    Add Savannah mirror config

     

    Config from git openembedded-core/meta/conf/bitbake.conf and device-software/openembedded-core/meta/classes/mirrors.bbclass . Not present in edison-src

    # in build directory :

    echo '

    SAVANNAH_GNU_MIRROR = "http://download.savannah.gnu.org/releases"

    SAVANNAH_NONGNU_MIRROR = "http://download.savannah.nongnu.org/releases"

    MIRRORS+="\

    ${SAVANNAH_GNU_MIRROR} http://download-mirror.savannah.gnu.org/releases \n \

    ${SAVANNAH_NONGNU_MIRROR} http://download-mirror.savannah.nongnu.org/releases \n \

    "' >> conf/local.conf

    Not sure for the MIRRORS variable but *_MIRROR are mandatory

     

    Build cmake-modules (fixed in current master)

     

    I got a problem (dependency ?) to build bondcpp. Building cmake-modules first resolve the problem

    bitbake cmake-modules

     

    Build world

     

    Not yet fully documented

    bitbake core-image-ros-world