[ros-users] SegFault in TransformBroadcaster

Brian Gerkey gerkey at willowgarage.com
Thu Jan 13 16:20:08 UTC 2011


On Thu, Jan 13, 2011 at 7:19 AM, David Gossow <dgossow at uni-koblenz.de> wrote:
> On 01/13/2011 07:08 AM, Brian Gerkey wrote:
>> On Wed, Jan 12, 2011 at 8:44 AM, David Gossow<dgossow at uni-koblenz.de>  wrote:
>>> Seems a bit dangerous to have this flag set via the manifest.xml export
>>> and not checking it somehow, as everything will compile without warning
>>> and then produce seemingly random errors.

>> Glad to hear that you figured it out.  Any suggestion on where else
>> those compile flags should live?

> it would be nice to not having to define this as a compiler flag.
> Changing that would need a bigger change to Bullet itself as it seems as
> there's no central header where you could define that.

Yeah, it's a tough problem, and Bullet's not alone.  For example, ODE
and Boost both exhibit the same issue: if you intend to link together
two objects using code from one of those libraries, you need to have
compiled them with the same set of flags.  ODE is similar to Bullet in
the double vs. single precision: it exports flags like -DdDOUBLE from
its pkgconfig file, which in ROS is pulled in from the manifest.
Boost's circular buffer has optional debug support that, when compiled
in, changes the size of the buffer structure.  To make sure that all
ROS code agrees on the size of that structure, rosbuild explicitly
adds -DBOOST_CB_DISABLE_DEBUG if you're using Boost.

	brian.



More information about the ros-users mailing list