diff --git a/PREVIOUS_USES b/PREVIOUS_USES new file mode 100644 index 0000000..1ba6a65 --- /dev/null +++ b/PREVIOUS_USES @@ -0,0 +1,58 @@ + +PREVIOUS USE CASES + +INSTALLATION: + + The repository only contains a layer for ROS that builds on top of the existing OpenEmbedded Core layer. + You can download the yocto poky-danny-8.0 archive, but then you should update the distutils.bbclass, + and maybe also the url of libarchive. + To install, unpack http://downloads.yoctoproject.org/releases/yocto/yocto-1.3/poky-danny-8.0.tar.bz2 into a directory . + + In the directory of the layers, clone this repository into the subdirectory meta-ros. + Add the meta-ros directory to your local bblayers.conf file. + + +USE for native compilation of ROS-fuerte on the qemu VM: + The commands + source oe-init-build-env + bitbake core-image-ros-fuerte + builds our specifically configured linux image. + + With `runqemu qemux86 qemuparams="-m 2048" core-image-ros-fuerte` the linux image runs within a virtual machine with 2048 MB of memory. + We assumed that this is running on and compiled for an x86 architecture. For other architectures, some settings must be adjusted. + + On the host system, run fetch-ros-fuerte.sh in a fresh directory, e.g. ~/ros-repos/. + It clones all ros repositories locally. + After starting the virtual machine, copy the installation script from the host system to the home directory with scp. + + scp lukas@192.168.7.1://install-fuerte.sh . + + Adjust configuration in install-fuerte.sh and then run + + sh ./install-fuerte.sh + + The installation script installs ros and starts roscore. + + +USE for native compilation of ROS-groovy on the qemu VM: + The commands + source oe-init-build-env + bitbake core-image-ros-groovy + builds our specifically configured linux image. + + With `runqemu qemux86 qemuparams="-m 2048" core-image-ros-groovy` the linux image runs within a virtual machine with 2048 MB of memory. + We assumed that this is running on and compiled for an x86 architecture. For other architectures, some settings must be adjusted. + + On the host system, run mk_srcarchive.sh in some clean temporary directory. + It copies all ros sources from their URLs and puts them into one src.tar.gz archive. + After starting the virtual machine, copy the installation script from the host system to the home directory with scp. + + scp lukas@192.168.7.1://install-groovy.sh . + + Adjust configuration in install-groovy.sh and then run + + sh ./install-groovy.sh + + The installation script installs ros and starts roscore. + + diff --git a/README b/README index f362b30..dd0920c 100644 --- a/README +++ b/README @@ -1,5 +1,6 @@ -This is a layer to provide ROS in an OpenEmbedded Linux system. -Currently, this layer is still under development and not fully functional. +This is a layer to provide ROS Groovy Galapagos in an OpenEmbedded Linux system. +Currently, this layer is still under development and only provides +cross-compilation of the basic ros-comm packages. MAINTAINER Lukas Bulwahn, BMW Car IT GmbH @@ -12,124 +13,87 @@ CONTRIBUTORS HOW TO CONTRIBUTE -We are still working on this development and are interested in other use cases. -If you are interested in this project, please contact us via email. -The more people are interested, the more we will be pushing this project. -If you want to contribute, please contact us and we can discuss open issues -and how we could join forces. + We are still working on this development and are interested in other use cases. + If you are interested in this project, please contact us via email. + The more people are interested, the more we will be pushing this project. + If you want to contribute, please contact us and we can discuss open issues + and how to join forces. -PURPOSE of this document: - This document describes - - the state of the current work - - the installation and use of the git repository meta_ros - - license information and origin of redistributed files +DEPENDENCIES + + This layer depends on: + + URI: git://git.openembedded.org/openembedded-core + branch: master + revision: HEAD + + URI: git://git.openembedded.org/meta-openembedded + layers: meta-oe + branch: master + revision: HEAD -STATE OF THIS WORK: +INSTALLATION - This repository provides - - Native compilation of ROS-fuerte - - Native compilation of ROS-groovy - - Cross compilation of ROS-groovy (under development) + The repository contains a layer for ROS that builds on top of the + OpenEmbedded Core layer and the meta-oe layer. -INSTALLATION/SETUP: - The repository only contains a layer for ROS that builds on top of the existing OpenEmbedded Core layer - and the meta-oe layer. - - Currently, I work with + We believe it should work with the current HEAD of the layers mentioned above. + As a further reference, here are the version I currently work with: * commit 395b90054eccddc1c9062a9a8657ed4482b7710a of https://github.com/openembedded/oe-core * commit 2a5dea2399e2be5e5d964eda7465dcaf4c2e152b of https://github.com/openembedded/meta-oe * commit 324ed96e28ec31cff8cef1824d20d40f9a5d46ad of git://git.openembedded.org/bitbake in the bitbake directory -USE for cross-compilation of ROS-groovy (in development): +USAGE - Currently, we can cross-compile the ROS packages with the commands: - source oe-init-build-env - bitbake + Currently, you can cross-compile the ROS packages with the commands: + source oe-init-build-env + bitbake Look at the meta-ros test reports for the description of the current state. -PREVIOUS USE CASES + The recipe core-image-ros-groovy-qemux86-running-roscore provides a minimal + Linux system that runs roscore on the qemu x86 virtual machine. + You can compile the minimal Linux system with + bitbake core-image-ros-groovy-qemux86-running-roscore -INSTALLATION: + Then, you start this system with + runqemu qemux86 core-image-ros-groovy-qemux86-running-roscore - The repository only contains a layer for ROS that builds on top of the existing OpenEmbedded Core layer. - You can download the yocto poky-danny-8.0 archive, but then you should update the distutils.bbclass, - and maybe also the url of libarchive. - To install, unpack http://downloads.yoctoproject.org/releases/yocto/yocto-1.3/poky-danny-8.0.tar.bz2 into a directory . - - In the directory of the layers, clone this repository into the subdirectory meta-ros. - Add the meta-ros directory to your local bblayers.conf file. - - -USE for native compilation of ROS-fuerte on the qemu VM: - The commands - source oe-init-build-env - bitbake core-image-ros-fuerte - builds our specifically configured linux image. - - With `runqemu qemux86 qemuparams="-m 2048" core-image-ros-fuerte` the linux image runs within a virtual machine with 2048 MB of memory. - We assumed that this is running on and compiled for an x86 architecture. For other architectures, some settings must be adjusted. - - On the host system, run fetch-ros-fuerte.sh in a fresh directory, e.g. ~/ros-repos/. - It clones all ros repositories locally. - After starting the virtual machine, copy the installation script from the host system to the home directory with scp. - - scp lukas@192.168.7.1://install-fuerte.sh . - - Adjust configuration in install-fuerte.sh and then run - - sh ./install-fuerte.sh - - The installation script installs ros and starts roscore. - - -USE for native compilation of ROS-groovy on the qemu VM: - The commands - source oe-init-build-env - bitbake core-image-ros-groovy - builds our specifically configured linux image. - - With `runqemu qemux86 qemuparams="-m 2048" core-image-ros-groovy` the linux image runs within a virtual machine with 2048 MB of memory. - We assumed that this is running on and compiled for an x86 architecture. For other architectures, some settings must be adjusted. - - On the host system, run mk_srcarchive.sh in some clean temporary directory. - It copies all ros sources from their URLs and puts them into one src.tar.gz archive. - After starting the virtual machine, copy the installation script from the host system to the home directory with scp. - - scp lukas@192.168.7.1://install-groovy.sh . - - Adjust configuration in install-groovy.sh and then run - - sh ./install-groovy.sh - - The installation script installs ros and starts roscore. + In the qemu shell, set up the environment with + export ROS_ROOT=/usr + export ROS_MASTER_URI=http://localhost:11311 + export CMAKE_PREFIX_PATH=/usr + touch /usr/.catkin + Finally, you can start roscore with + roscore + LICENSE -All metadata is MIT licensed unless otherwise stated. Source code included -in tree for individual recipes is under the LICENSE stated in each recipe -(.bb file) unless otherwise stated. -The descriptions in the recipes of ROS packages have been extracted from -the ROS wiki (http://www.ros.org/wiki/) and are licensed under -Creative Commons Attribution 3.0 (http://creativecommons.org/licenses/by/3.0/) -unless otherwise noted. + All metadata is MIT licensed unless otherwise stated. Source code included + in tree for individual recipes is under the LICENSE stated in each recipe + (.bb file) unless otherwise stated. + The descriptions in the recipes of ROS packages have been extracted from + the ROS wiki (http://www.ros.org/wiki/) and are licensed under + Creative Commons Attribution 3.0 (http://creativecommons.org/licenses/by/3.0/) + unless otherwise noted. -This README document is Copyright (C) 2012 BMW Car IT GmbH. + This README document is Copyright (C) 2012 BMW Car IT GmbH. REDISTRIBUTIONS -The log4cxx recipe originated from the recipe in the OpenEmbedded (Classic) Development + The log4cxx recipe originated from the recipe in the OpenEmbedded (Classic) Development (cf. http://cgit.openembedded.org/openembedded/tree/recipes/log4cxx) licensed with the MIT License. -The core-image-ros-* recipes originated from the core-image-minimal recipe in OpenEmbedded Core + The core-image-ros-* recipes originated from the core-image-minimal recipe in OpenEmbedded Core (cf. http://cgit.openembedded.org/openembedded-core/tree/meta/recipes-core/images/core-image-minimal.bb) licensed with the MIT License. -The modified files are redistributed here under the same MIT License. + The modified files are redistributed here under the same MIT License.