修改编译 ros_bridge docker中的源码

Posted 想游泳的鱼

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了修改编译 ros_bridge docker中的源码相关的知识,希望对你有一定的参考价值。

有时候需要修改一下ros_bridge docker中的源码
这个docker镜像中的源码分为两部分,一部分是autoware的源码,一部分是carla_ros_bridge的,
carla_ros_bridge的源码都是以ros node的形式编写的,存放在carla-autoware-agent 和 ros-bridge两个
目录中,编译是在carla_ws目录中。
整个ros_bridge docker镜像的目录结构如下

  • Autoware的源码
  • PythonAPI是carla的api库的egg存放的地方
  • autoware-contents是Autoware运行的时候需要的一些资源。
  • carla-autoware和ros-bridge是ros_bridge的代码存放的地方,本来应该放在carla_ws中的,但是carla_ws只是存放了一个软链接

修改编译Autoware的源码

如果修改了Autoware的源码,就要进入Autoware目录里面,运行如下命令进行编译修改的包

colcon build --cmake-args -DCMAKE_BUILD_TYPE=Release --packages-select "packageName packName"

然后别忘记执行

source install/setup.bash

修改编译ros_bridge的源码

如果要修改编译ros_bridge 的源码或者launch文件,需要进入carla_ws目录,运行如下命令

catkin_make -DCATKIN_WHITELIST_PACKAGES="需要单独编译的包名"

编译运行完毕之后,执行

source devel/setup.bash

PS

有时候编译Autoware的源码或者carla_ros_bridge的源码,需要在root权限,但是坑爹的是这个docker镜像的root环境下居然没有catkin_make命令,这个只能手动安装。这里我用了鱼香ROS的一建工具

wget http://fishros.com/install -O fishros && . fishros

运行后选择4,配置ROS桌面环境,安装好以后就有了这个命令。但是一退出root环境,再进来这个命令就又没有了,我只好再运行一次鱼香的这个命令。这个问题目前还没找到什么好的办法,哪位网友找到了,请在留言区告诉我,感激不禁!

以上是关于修改编译 ros_bridge docker中的源码的主要内容,如果未能解决你的问题,请参考以下文章

修改编译 ros_bridge docker中的源码

如何修改makefile以将更改的源编译到对象目录中,文件列表除外

ros_bridge ackermann控制

ros_bridge ackermann控制

ros_bridge ackermann控制

IntelliJ Idea编译报错:无效的源发行版 1.7