我想为ROS创建一个Eclipse python项目。我一直在寻找ROS教程,ROS答案和stackoverflow,但我还没有看到合适的答案。
首先,我正在使用Ubuntu 14.04
,ROS Indigo
,Eclipse Neo
n和Python 2.7
,即使我认为不会改变先前版本的内容关于这个特定话题。
我遵循的命令序列是:
mkdir -p ws/src
cd ws/src
catkin_create_pkg mypackage std_msgs rospy roscpp
cd ..
catkin_make --force-cmake -G"Eclipse CDT4 - Unix Makefiles"
awk -f $(rospack find mk)/eclipse.awk build/.project > build/.project_with_env && mv build/.project_with_env build/.project
cmake ./src -DCMAKE_BUILD_TYPE=Debug
cd src/mypackage
python $(rospack find mk)/make_pydev_project.py
mv .pydevproject ../../build
问题是:
我更喜欢catkin_make
而非catkin build
,因为后者将.project放在/build
内的某个子文件夹中。可以吗,或者你建议改用build
吗?
在工作区级别生成catkin_make --force ... no CMakeLists.txt
,因此我运行catkin_init_workspace
创建一个。我之前无法做到,因为catkin_make
会抱怨CMakeLists
。你看到有什么问题吗?
我是否还必须运行awk -f $(rospack ... for the .pydevproject
?
因此,我最终在构建中有.project
和.pydevproject
。当我在eclipse中导入项目(将现有项目导入Workspace)时,它是作为C ++项目完成的。然后我将其转换为pydev项目。这是正常的吗?
项目中的库列表如下图所示。有什么遗失? Libraries
Eclipse中的树结构如下图所示。如你所见,这是一个混乱。有可能清理它吗? Eclipse Tree Structure
要关闭,我想问一下是否有更简单的方法来完成工作。
答案 0 :(得分:0)
嗯,有点奇怪的是他们会生成一个.pydevproject
并且不会这样做(这将在.project
中包含projectDescription
中包含以下内容的部分<buildSpec>
<buildCommand>
<name>org.python.pydev.PyDevBuilder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.python.pydev.pythonNature</nature>
</natures>
1}}标签)
.project
注意:我知道PyDev方面,但我不知道在.pydevproject
和public class func viewWithIndex(_ index: Int, str: String) {
println(index, str)
}
文件中实际产生了什么...我的建议是打开这些文件并查看它们包含的内容试着得到你的答案。
您可以创建一个空的PyDev项目,并将一些文件夹添加为源文件夹,方法是按照手册了解PyDev手册后的内容:http://www.pydev.org/manual.html然后比较它们生成的内容(它是一个xml文件)结构非常简单。)