ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question
0

How to Install FCL library in ROS-Kinetic (catkin workspace)

asked 2018-01-08 22:56:41 -0500

puneet.tiwari gravatar image

updated 2018-01-09 00:27:42 -0500

jayess gravatar image

PROBLEM:: I am not able to compile FCL using catkin_make ??

ERROR::

CMake Error at path_planner/CMakeLists.txt:6 (find_package):
By not providing "Findfcl.cmake" in CMAKE_MODULE_PATH this project has
asked CMake to find a package configuration file provided by "fcl", but
CMake did not find one.

Could not find a package configuration file provided by "fcl" with any of the following names:

fclConfig.cmake
fcl-config.cmake

Add the installation prefix of "fcl" to CMAKE_PREFIX_PATH or set "fcl_DIR" to a directory containing one of the above files. If "fcl" provides a separate development package or SDK, be sure it has been installed.

<------------------------------------------------------------------------------------------------------------------->

My package has this cmake file:::

cmake_minimum_required(VERSION 2.8.3)

project(path_planning)

set (CMAKE_CXX_STANDARD 11)

find_package(octomap REQUIRED)

find_package(fcl REQUIRED)

find_package(OMPL REQUIRED)

find_package(catkin REQUIRED COMPONENTS
  octomap_msgs
  octomap_ros
  pcl_conversions
  pcl_ros
  roscpp
  std_msgs
)

catkin_package(
  INCLUDE_DIRS include
  LIBRARIES path_planning
  CATKIN_DEPENDS octomap_msgs octomap_ros pcl_conversions pcl_ros roscpp std_msgs
#  DEPENDS octomap PCL
)

include_directories(
  ${PROJECT_SOURCE_DIR}/include
  ${catkin_INCLUDE_DIRS}
  ${PCL_INCLUDE_DIRS}
  ${OCTOMAP_INCLUDE_DIRS}
  ${Boost_INCLUDE_DIR}
  ${OMPL_INCLUDE_DIRS}
  ${fcl_INCLUDE_DIRS}
)

link_libraries(${OCTOMAP_LIBRARIES}  ${OMPL_LIBRARY_DIRS} ${fcl_LIBRARY_DIRS})
edit retag flag offensive close merge delete

Comments

Hello, I have the same ERROR with you when compile "path_planning" in ros kinetic. So, have you worked this error out? I need your help, thanks!

zhchpan gravatar image zhchpan  ( 2018-01-21 08:38:18 -0500 )edit

No, this problem is still not solved. If anyhow you find a solution, please let me know as well. Instead of using this library, Now I am using voxels in octomap to check any collision.

Thanks

puneet.tiwari gravatar image puneet.tiwari  ( 2018-01-22 00:42:21 -0500 )edit

When I browse fcl's website, I found that fcl before version 0.5 doesn't have 'fclConfig.cmake', so I solve this bug by downloading and compiling the fcl library of version 0.5.

zhchpan gravatar image zhchpan  ( 2018-01-22 01:43:36 -0500 )edit

3 Answers

Sort by ยป oldest newest most voted
0

answered 2019-12-18 06:18:29 -0500

smichael gravatar image

Hi, just an update in case someone else also has this problem and want to use the libfcl-0.5-dev package. The moveit-package also uses the fcl-library and their CMakeList looks the following way:

https://github.com/ros-planning/movei...

edit flag offensive delete link more
0

answered 2018-01-09 10:18:02 -0500

joq gravatar image

If you mean this FCL version, you can't build it in using catkin_make, because it's not a catkin package.

You might be able to build it using catkin_tools, but I believe you'd need to create a package.xml specifying a <buildtool_depend> of cmake.

See: https://catkin-tools.readthedocs.io/e...

edit flag offensive delete link more

Comments

Thanks a lot. However, I am searching fcl, which I can build with catkin_make. Do you have any idea about fcl which I can build with catkin_make??

puneet.tiwari gravatar image puneet.tiwari  ( 2018-01-09 23:08:57 -0500 )edit

<package>

<name>path_planning</name>

<version>0.0.0</version>

<description>The path_planning package</description>

<maintainer <a="" hitech@todo.todo"="" href="mailto:email=">hitechemail="hitech@todo.todo">hitech></maintainer>

<license>TODO</license>

<buildtool_depend>catkin</buildtool_depend>

puneet.tiwari gravatar image puneet.tiwari  ( 2018-01-09 23:54:18 -0500 )edit

<build_depend>octomap_msgs</build_depend>

<build_depend>octomap_ros</build_depend>

<build_depend>pcl_conversions</build_depend>

<build_depend>pcl_ros</build_depend>

<build_depend>roscpp</build_depend>

<build_depend>std_msgs</build_depend>

<run_depend>octomap_msgs</run_depend>

puneet.tiwari gravatar image puneet.tiwari  ( 2018-01-09 23:55:32 -0500 )edit

<run_depend>octomap_ros</run_depend>

<run_depend>pcl_conversions</run_depend>

<run_depend>pcl_ros</run_depend>

<run_depend>roscpp</run_depend>

<run_depend>std_msgs</run_depend>

<export> </export> </package>

puneet.tiwari gravatar image puneet.tiwari  ( 2018-01-09 23:56:15 -0500 )edit

I am not aware of any "catkinized" FCL version. Maybe someone else knows.

joq gravatar image joq  ( 2018-01-10 10:15:10 -0500 )edit
0

answered 2018-05-22 10:50:40 -0500

jpde.lopes gravatar image

updated 2018-05-22 10:51:07 -0500

To use FCL, I followed this, meaning:

I have removed previously installed versions,

sudo apt-get -qq remove libfcl0 libfcl-dev ros-kinetic-octomap
sudo apt-get -qq install libccd-dev

I have cloned the code from github and added the package.xml with:

wget https://raw.githubusercontent.com/ros-gbp/fcl-release/debian/jade/fcl/package.xml

I did not follow the last step, were it was needed to rename the package, since it was not required for what I wanted to do.

Next, I compiled the workspace with only the fcl package inside. After, I added another package, which will use fcl and I made sure it detected the fcl package, by following this answer.

I understand that this is not a direct answer to your question, but it may help, so here it is.

edit flag offensive delete link more

Question Tools

2 followers

Stats

Asked: 2018-01-08 22:56:41 -0500

Seen: 4,608 times

Last updated: May 22 '18