On 03/31/2014 08:44 AM, francesco [via Gumstix] wrote:

> Hi all,
> recently I got  an Overo AirSTORM COM and a Robovero, with Linaro and
> ROS pre-installed (*2 for details).
> Everything is ok, but ROS doesn't work well.
> In particular, I can run roscore, rosrun, but catkin_make doesn't work.
> When I run  catkin_make at the root of my ROS workspaces, I always
> obtain:
> $> #### Running command: "make -j1" in "/root/catkin_ws2/build"  (*1
> for details)
> Even if I apply this advice, nothing changes.
> Furthermore, I checked the links like (
> http://wiki.gumstix.org/index.php?title=ROS ,
> http://wiki.ros.org/groovy/Installation/Linaro/Source)
> and I found that some steps proposed in these links had not been
> performed on my boards ( e.g. step 8 and 9 in the first link).
> I applied the corrections in steps 8 and 9 but it didn't solve the
> issue. In particular, if I run  $>python os_detect.py   I still obtain
> ubuntu as answer.
> Any ideas about how to make the ROS installation  works?

I did a ROS native compilation on an Overo running Linaro a while back.  
It's difficult to know the state of your configuration from the
information above.  Looking back on my notes, this is how I built the
'robot' variant configuration for Groovy.

Install libraries and tools
Get all the necessary libraries and tools:

sudo apt-get install build-essential python-pip python-yaml
python-setuptools libyaml-dev libboost-all-dev cmake git subversion vim

sudo pip install rospkg rosdep rosinstall catkin-pkg wstool

Setup catkin
We create a catkin workspace and initialize it to build core ROS packages:

sudo mkdir -p /opt/ros/groovy/catkin_ws
cd /opt/ros/groovy/catkin_ws

Next, download all the packages for the 'robot' variant configuration:

sudo wstool init src -j1

Install dependencies
Ensure rosdep has been initialized and update it:

sudo rosdep init
rosdep update

ROS does not detect Linaro as an OS right now.  Therefore, we need to
patch os_detect.py.

sudo vi /usr/local/lib/python2.7/dist-packages/rospkg/os_detect.py

Add the following lines:

OsDetect.register_default(OS_UBUNTU, LsbDetect("Linaro"))

Before we can build the catkin workspace, we need to make sure that we
have all the required dependencies.  We use the rosdep tool for this.
The -y option automatically accepts the download and the -r option will
ignore errors.

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

After the above command finishes, there may be some warnings about
missing libraries.  This is due to there being no repositories for the
ARM variants of those libraries.  Below are instructions for installing
the necessary libraries.

sudo apt-get install libxml2-dev
cd /opt
sudo wget
sudo tar -xf collada-dom-2.4.0.tgz
cd collada-dom-2.4.0
sudo cmake .
sudo make install

cd /opt
sudo wget sudo wget
sudo unzip -q assimp--3.0.1270-source-only.zip
cd assimp--3.0.1270-source-only
sudo cmake .
sudo make install

Install ROS
Build catkin and install it.  catkin is the low-level build system of ROS:

sudo ./src/catkin/bin/catkin_make_isolated --install

Configure ROS
Run the following command to automatically add ROS environment variables
every time a new shell is launched and then set them in the current bash

echo "source /opt/ros/groovy/catkin_ws/install_isolated/setup.bash" >>
source ~/.bashrc

View this message in context: Re: ROS pre-installed on Linaro: Overo AirSTORM + Robovero
Sent from the Gumstix mailing list archive at Nabble.com.