[Fedora Armhf 和 ROS] 系列文章参照实际操作,记录了在Fedora Armhf 环境中使用ROS的相关经验。
文章主题:ROS Indigo 中 workspace 和 package 的创建
本文章介绍了ROS indigo 中 workspace 和 package 的创建。系统环境如下:
硬件:Banana Pro
系统:Fedora 20 for BananaPro (可类比Fedora 20 Armhf)
1. ROS Workspace
ROS 的使用需要在 workspace 中进行。而一个 ROS workspace 其实就是经过初始化处理的文件夹。如下为在home (~/)中创建一个名为 rosws 的workspace 的过程:
$ mkdir -p ~/rosws/src
$ cd ~/rosws/src
$ catkin_init_workspace
<p class="p1">$ cd ~/catkin_ws</p><p class="p1">$ catkin_make</p>
为了使 rosws 作为 workspace 正常启用,需要执行
$ source devel/setup.bash
当然也可以将这句命令放入 ~/.bashrc ,在登录时自动载入。
2. 创建自己的 package。在 ROS 中编写程序,需要首先创建(或选择已有的) package。在 rosws 中创建依赖 rospy 的 mypackage,需要执行
$ cd ~/rosws/src
$ catkin_create_pkg mypackage rospy
如果编写 python 代码执行时遇到 bad interpreter:permission denied 这样的错误提示,通常是由于代码头部对于要是用的 python 编译器调用失败。在本文章中代码执行的环境下,需要调用的python编译器为 /usr/bin/python2.7,故需要确认在 python 文件的头部注明
<span style="font-family: Arial, Helvetica, sans-serif;"> #!/usr/bin/python2.7</span>
如果编写 python 代码时使用 import mypackage 或者 from mypackage import *被报错“no module named mypackage,需要检查在 rosws 目录下 devel/setup.sh 中 PYTHONPATH 的定义。本例中需要设置
export PYTHONPATH=~/rosws/devel/lib/python2.7/ site-packages:~/rosws/devel/lib/python2.7/ dist-packages