working on scripts and extending README

This commit is contained in:
Lukas Bulwahn 2012-12-21 10:20:54 +01:00
parent 4af57644ac
commit 5cacde7e52
3 changed files with 76 additions and 13 deletions

28
README
View File

@ -1,4 +1,4 @@
This is a layer to provide ros in an openembedded linux system. This is a layer to provide ROS in an openembedded linux system.
Currently, this layer is still under development and not fully functional. Currently, this layer is still under development and not fully functional.
PURPOSE of this document: PURPOSE of this document:
@ -10,11 +10,14 @@ PURPOSE of this document:
INSTALLATION: INSTALLATION:
The repository only contains a layer for ros to be added to the existing yocto poky-danny-8.0 archive. 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 <dir>. To install, unpack http://downloads.yoctoproject.org/releases/yocto/yocto-1.3/poky-danny-8.0.tar.bz2 into a directory <dir>.
In <dir>, clone this repository into the subdirectory meta-ros.
Add the meta-ros directory to your local bblayers.conf file 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 on the VM (milestone M1): USE for native compilation on the VM (milestone M1):
The commands The commands
@ -27,12 +30,23 @@ USE for native compilation on the VM (milestone M1):
On the host system, run fetch_ros.sh in a fresh directory, e.g. ~/ros-repos/. On the host system, run fetch_ros.sh in a fresh directory, e.g. ~/ros-repos/.
It clones all ros repositories locally. It clones all ros repositories locally.
Then adjust pathes in fuerte-ros-base.rosinstall to the local repositories. After starting the virtual machine, copy the installation script from the host system to the home directory with scp.
After starting the virtual machine, copy the installation script from the host system to the home directory with scp and execute it.
scp lukas@192.168.7.1:/<location of repository>/install.sh . scp lukas@192.168.7.1:/<location of repository>/install.sh .
Adjust configuration in install.sh and then run
sh ./install.sh sh ./install.sh
The installation script installs ros and starts roscore.
USE for cross-compilation (milestone M2):
source oe-init-build-env
bitbake ros
momentarily fails at some point (see CURRENT STATE)
CONTENT of the repository: CONTENT of the repository:

View File

@ -1,18 +1,67 @@
#!/bin/bash
## Installation script that should run in the virtual machine ## Installation script that should run in the virtual machine
# copy it into the virtual machine with: # copy it into the virtual machine with:
# scp <user>@192.168.7.1:/<location of install.sh> . # scp <user>@192.168.7.1:/<location of install.sh> .
# and run it: # and run it:
# sh ./install.sh # sh ./install.sh
# #
# local setting (must be adjusted)
USERNAME="lukas"
REPOS_PATH="/home/lukas/ros-repos/"
HOST_IP="192.168.7.1"
# This script does the following steps: # This script does the following steps:
# create ssh login without password # create ssh login without password
USERNAME = lukas #
REPOS_PATH = /home/lukas/ros_server/
HOST_IP = 192.168.7.1
ssh-keygen -t rsa ssh-keygen -t rsa
cat .ssh/id_rsa.pub | ssh $USERNAME@$HOST_IP 'cat >> .ssh/authorized_keys' cat .ssh/id_rsa.pub | ssh $USERNAME@$HOST_IP 'cat >> .ssh/authorized_keys'
# copy prepared rosinstall file # create prepared rosinstall file
scp $USERNAME@$HOST_IP:$REPOS_PATH/fuerte-ros-base.rosinstall .
cat > fuerte-ros-base.rosinstall << EOF
- git:
local-name: catkin
uri: git://$HOST_IP/$REPOS_PATH/catkin-release
version: debian/ros-fuerte-catkin_0.4.4_lucid
- git:
local-name: common_msgs
uri: git://$HOST_IP/$REPOS_PATH/common_msgs-release
version: debian/ros-fuerte-common-msgs_1.8.7_lucid
- git:
local-name: gencpp
uri: git://$HOST_IP/$REPOS_PATH/gencpp-release
version: debian/ros-fuerte-gencpp_0.3.4_lucid
- git:
local-name: genlisp
uri: git://$HOST_IP/$REPOS_PATH/genlisp-release
version: debian/ros-fuerte-genlisp_0.3.3_lucid
- git:
local-name: genmsg
uri: git://$HOST_IP/$REPOS_PATH/genmsg-release
version: debian/ros-fuerte-genmsg_0.3.10_lucid
- git:
local-name: genpy
uri: git://$HOST_IP/$REPOS_PATH/genpy-release
version: debian/ros-fuerte-genpy_0.3.7_lucid
- git:
local-name: ros
uri: git://$HOST_IP/$REPOS_PATH/ros-release
version: debian/ros-fuerte-ros_1.8.9_lucid
- git:
local-name: ros_comm
uri: git://$HOST_IP/$REPOS_PATH/ros_comm-release
version: debian/ros-fuerte-ros-comm_1.8.12_lucid
- git:
local-name: roscpp_core
uri: git://$HOST_IP/$REPOS_PATH/roscpp_core-release
version: debian/ros-fuerte-roscpp-core_0.2.5_lucid
- git:
local-name: rospack
uri: git://$HOST_IP/$REPOS_PATH/rospack-release
version: debian/ros-fuerte-rospack_2.0.13_lucid
- git:
local-name: std_msgs
uri: git://$HOST_IP/$REPOS_PATH/std_msgs-release
version: debian/ros-fuerte-std-msgs_0.4.8_lucid
EOF
# run rosinstall # run rosinstall
mkdir ~/ros mkdir ~/ros
rosinstall --catkin ~/ros fuerte-ros-base.rosinstall rosinstall --catkin ~/ros fuerte-ros-base.rosinstall