FirePrime开发板上的系统为Ubuntu15.04,其他linux版本的系统或其他版本的Ubuntu安装ROS的过程有一些差异。
ps:安装时间是在15国庆的时候,在别的论坛发的贴
安装过程参考ROS Wiki:
Ubuntu ARM install of ROS Jade:http://wiki.ros.org/jade/Installation/UbuntuARM
Installing from source:http://wiki.ros.org/jade/Installation/Source
在ARM类的开发板上安装ROS,是一个漫长的过程,也会很容易出错,出错可以去这个网站:http://answers.ros.org,看看有没有类似的问题,也可以在这个网站寻求帮助。
下面开始安装。
1.安装准备
1.1 配置你的Ubuntu软件版本仓库
FirePrime运行的Ubuntu15.04这一步已经配置好了,不需要做出改动。
1.2 设置你的Locale
主要是Boost和ROS的一些工具需要,通过在终端运行下面的指令设置。
sudo update-locale LANG=C LANGUAGE=C LC_ALL=C LC_MESSAGES=POSIX
1.3 设置你的sources.list
sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu vivid main" > /etc/apt/sources.list.d/ros-latest.list'
1.4 设置你的Keys
wget https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -O - | sudo apt-key add -
1.5
确保你的系统已经更新
sudo apt-get update
sudo apt-get upgrade
1.6
安装
booststrap
依赖
sudo apt-get install python-rosdep python-rosinstall-generator python-wstool python-rosinstall build-essential
1.7
初始化
rosdep
mkdir ~/ros_catkin_ws
cd ~/ros_catkin_ws
rosinstall_generator desktop --rosdistro jade --deps --wet-only --tar > jade-desktop-wet.rosinstall
wstool init -j8 src jade-desktop-wet.rosinstall </span>
如果wstool init失败或中断,下面的命令会接着下载:
wstool update -j 4 -t src</span>
rosdep install --from-paths src --ignore-src --rosdistro jade -y</span>
mkdir ~/ros_catkin_ws/external_src
sudo apt-get install checkinstall cmake
cd ~/ros_catkin_ws/external_src
sudo apt-get install libboost-filesystem-dev libxml2-dev
wget http://downloads.sourceforge.net/project/collada-dom/Collada%20DOM/Collada%20DOM%202.4/collada-dom-2.4.0.tgz
tar -xzf collada-dom-2.4.0.tgz
cd collada-dom-2.4.0
cmake .
sudo checkinstall make install</span>
rosdep install --from-paths src --ignore-src --rosdistro jade -y</span>
./src/catkin/bin/catkin_make_isolated --install -DCMAKE_BUILD_TYPE=Release</span>
这个过程挺长的,慢慢等待吧。
dd if=/dev/zero of=/swapfile bs=1k count=2048000
mkswap /swapfile
(3)
激活
swap
文件。
swapon /swapfile
但是这样并不能在系统重启的时候自动挂载交换分区,这样我们就需要修改
fstab
。
/swapfile swap swap defaults 0 0
#ifdef __arm__
bool Assimp::IOSystem::ComparePaths(const char *p1, const char *p2)const
{
return !::strcasecmp(p1,p2);
}
#endif
第三个错误出现在编译
rviz
包的时候,错误提示与第二个错误类似。解决方法在
ros_catkin_ws/srcrviz/src/rvizmesh_loader.cpp
中包含
assimp
相关文件之后,加入以下代码:
#ifdef __arm__
bool Assimp::IOSystem::ComparePaths(const char *p1, const char *p2)const
{
return !::strcasecmp(p1,p2);
}
#endif
echo "source ~/ros_catkin_ws/install_isolated/setup.bash" >> ~/.bashrc
source ~/.bashrc