官方学习文档FCL: Main Page (flexible-collision-library.github.io)
使用FCL需要先安装Eigen和libccd库(https://github.com/danfis/libccd)
(可选)对于八叉树碰撞需要安装https://octomap.github.io/.
1、下载FCL库
可以从FCL的官方网站下载 flexible-collision-library/fcl: Flexible Collision Library (github.com)
2、编译FCL库
在终端中进入FCL源代码目录。您可以使用以下命令进入FCL源代码目录:
cd /path/to/fcl
其中,/path/to/fcl
是FCL源代码的路径。
创建一个build目录。
mkdir build
cd build
运行CMake命令以生成Makefile
cmake -G "MinGW Makefiles" ..
依赖关系:方法1:在系统变量里添加libccd和Eigen库的路径
方法2:在命令后 -I path 包含Eigen和libccd,在CMakeLists.txt文件中添加以下内容:
find_package(Eigen3 REQUIRED)
include_directories(${EIGEN3_INCLUDE_DIRS})
这将确保CMake可以找到并包含Eigen头文件 。
管理员权限启动命令行,输入一下命令,安装库
make
make install
完成后,找到就可以使用了
常见报错
1.
原因是test文件夹内编译错误,其实错误并不影响库的生成,因为libfcl已经BIuilt完成,可以不用理会。
原因是:主目录下的Cmakelist.txt内有包含test
ctrl+F 搜素test 找到382-384行,给他注释掉,在编译就不报错了
-- FCL does not use OctoMap , 对于八叉树碰撞需要安装ttps://octomap.github.io/.
2、需要先安装CCD库
3、需要安装Eigen矩阵运算库
3、编译器设置有误
要解决这个错误,可以尝试以下方法:
-
安装Visual Studio,将Visual Studio的安装路径添加到系统的环境变量中。打开Windows的“环境变量”对话框,将Visual Studio的安装路径添加到“Path”环境变量中。例如,如果您使用的是Visual Studio 2019,那么默认情况下它应该安装在C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\文件夹中。
-
使用CMake的-DCMAKE_GENERATOR选项来指定使用其他编译器或生成器。例如,如果您希望使用MinGW来编译项目,您可以使用以下命令:
cmake -G "MinGW Makefiles" ..
如果您希望使用Ninja来编译项目,您可以使用以下命令:
cmake -G "Ninja" ..
libccd安装
libccd是一个用于几何碰撞检测的C库。以下是安装libccd的一般步骤:
-
解压后新建build目录,并进入build
-
编译
cmake -G "MinGW Makefiles" ..
4.编译和安装:运行以下命令进行编译和安装:
-
cmake install
注意:需要管理员权限
-
-
Eigen安装雷同CCD
-