I am using Ubuntu 14.04 / Indigo and the latest FCL clone from the repo
With the following includes:
#include
#include
#include
#include
#include
I am trying to create a simple Box:
Box box0( ); // Parens shouldn't be the correct way to invoke this in C++
Throws no error, but when I
Vec3f boxDims{ 1,1,1 };
Box box0{ boxDims };
or
Box box0{ }; // I would expect the constructor to be invoked with curly braces in C++?
The following errors happen:
CMakeFiles/marker_move.dir/src/mrkr_move.cpp.o: In function `fcl::CollisionGeometry::CollisionGeometry()':
mrkr_move.cpp:(.text._ZN3fcl17CollisionGeometryC2Ev[_ZN3fcl17CollisionGeometryC5Ev]+0x33): undefined reference to `fcl::AABB::AABB()'
CMakeFiles/marker_move.dir/src/mrkr_move.cpp.o: In function `fcl::Box::Box(fcl::Vec3fX> const&)':
mrkr_move.cpp:(.text._ZN3fcl3BoxC2ERKNS_6Vec3fXINS_7details8Vec3DataIdEEEE[_ZN3fcl3BoxC5ERKNS_6Vec3fXINS_7details8Vec3DataIdEEEE]+0x23): undefined reference to `vtable for fcl::Box'
CMakeFiles/marker_move.dir/src/mrkr_move.cpp.o: In function `fcl::Box::~Box()':
mrkr_move.cpp:(.text._ZN3fcl3BoxD2Ev[_ZN3fcl3BoxD5Ev]+0x13): undefined reference to `vtable for fcl::Box'
Which seems to refer to the Box constructor. Do you know what is causing this?
The same errors occur when I try to invoke the constructor with three floats as the signature.
I have added `/usr/include/fcl` to the `include_directories` command within `CMakeLists.txt`, but this does not change the error. I originally built FCL with `cmake` / `make`, and used `sudo make install` as usual.
Also, I cannot `find_package(FCL REQUIRED)` because I am building with catkin/ROS, and FCL is not a ROS package.
Anyone else have these troubles with C++ / FCL / Ubuntu / Indigo?
Thanks in advance!
↧