FCL碰撞检测开源库的安装和链接
简介
FCL是一个用于碰撞检测和碰撞可能性估计的开源库,经常和SLAM中的八叉树地图Octomap一起在路径规划中使用。
下载
FCL官网提供了多种下载的方式,第一种是下载ros中的FCL库,但是fuerte对应的是Ubuntu12.04,而我尝试着下载melodic版本的FCL,却被告知没有找到软件源。因此建议使用第二种方式,也即在github上下载。github的地址:https://github.com/flexible-collision-library/fcl
值得注意的是,github网站上有FCL库的多个版本,从0.3.0到0.7.0,而从0.6.0开始FCL的开发者对FCL库的目录、代码等都做了修改,导致有点面目全非。有些路径规划的源代码用的就是FCL库的历史版本,如果使用新版本编译,就会报错,诸如头文件目录不对、函数参数列表不正确等等的错误。
如果想要下载历史版本,可以点击网页右边的releases,进去后选择历史版本的assets,便可以下载zip或者tar.gz的压缩包。如下图:
目前FCL库的历史版本只能下载压缩包,无法使用git clone -b version来下载。如果想下载最新版本,则直接键入:
git clone https://github.com/flexible-collision-library/fcl.git
安装
FCL库的安装步骤较为简单,只需执行以下步骤:
cd fcl
mkdir build
cd build
cmake ..
make
sudo make install
最后一步值得注意,它会把FCL的静态库文件放到usr文件夹中。
链接FCL库
主要是CMakeLists.txt中的引用比较麻烦。一开始以为按部就班三部曲:find_package、include_directories、target_link_libraries即可。但是在生成可执行文件时,总是报“xx函数未定义的引用”的错。网上也说了这是识别不了函数实现的cpp文件的原因。但是具体怎么写还是不清楚。最后摸索出来只需要多一步link_libraries,直接给编译器指定静态库绝对路径。因此FCL库的引用如下:
find_package(FCL REQUIRED)
include_directories(${FCL_INCLUDE_DIRS})
link_libraries("/usr/local/lib/libfcl.so.0.5.0" "/usr/local/lib/libfcl.so.7" "/usr/local/lib/libfcl.so")
这里指定了绝对路径后target_link_libraries中可以不用写。link_libraries中的路径可以在刚才执行sudo make install时看到:
至此FCL库链接完毕。
FCL碰撞检测开源库的安装和链接相关推荐
- Redis中使用Lua脚本(续)- Linux下Lua-cjson开源库的安装和使用
Redis中使用Lua脚本(续)- Lua-cjson开源库的安装和使用 问题 原因 解决方案 在Redis的lua脚本编写中,我们可能会用到json的序列化和反序列化. Json序列化: -- Re ...
- MQTT开源库mosquitto安装和使用(一)
文章目录 1.下载和安装 1.1.下载地址 1.2.安装 1.2.1.二进制安装 1.2.2.windows版本二进制安装 1.2.2.1.下载和安装 1.2.2.2.配置环境变量 1.2.2.3.启 ...
- 对开源库 limdu 命令注入漏洞 (CVE-2020-4066) 的简要分析
聚焦源代码安全,网罗国内外最新资讯! 编译:奇安信代码卫士团队 开源库Limdu 的 trainBatch 函数中存在一个命令注入漏洞 (CVE-2020-4066). Limdu 是 Node.j ...
- 【已解决】nimfa 环境的详细搭建过程 + 各种依赖库的安装、下载、调试
为方便交流学习,工具已整理上传至CSDN.作者:玉林师范学院计算机系 guomutian911. 开源包下载地址: 也可邮件获得,316190672@qq.com Numpy 下载地址:http:// ...
- Libra 骗局来了;嫦娥五号将利用 AI 确定登陆位置;GitHub 移除色情应用 DeepNude 的开源库 | 开发者周刊...
整理 | 张红月 出品 |CSDN(ID:CSDNnews) 本周热门项目 独立开发者赚钱的资源集合(下附链接) https://github.com/lightningminers/aweso ...
- Python库的安装详解
安装非标准Python库 Python标准库中,用于网页数据采集的有urllib库,同样,有很多优秀的开源库,像BeautifulSoup库.Requests库等. 接下来就介绍一些开源库的安装方法 ...
- react-native 为本地js和开源库的js编写.d.ts声明文件
读书不觉已春深 !明日清明节 在使用Typescript编写程序RN过程中遇到困扰,且不论react,不论在浏览器中,只论写react-native的APP,怎么使用 declare声明文件 和 na ...
- 2022-3-15 安装fcl的依赖库ccd,动态链接库和静态链接库
GitHub libccd 库 默认是静态链接库,cmake安装其为动态 To build libccd as a shared library, set the BUILD_SHARED_LIBS ...
- 2019最新Android常用开源库总结(附带github链接)
前言 收集了一些比较常见的开源库,特此记录(已收录350+).另外,本文将持续更新,大家有关于Android 优秀的开源库,也可以在下面留言. 一 .基本控件 1.TextView HTextView ...
最新文章
- pip 更新失败报[no module named pip]修复方法
- camera tweak android,苹果iPhone相机大提升 CameraTweak2超强大的拍照增强插件
- java基础 第八章(静态成员的调用 、 封装)
- 银行不断爆雷,金融业苦日子刚刚开始
- [新手学go]关于go语言中的变量重复声明
- 中小企业信息化及市场
- 一文讲清,MySQL数据库一行数据在磁盘上是怎么存储的?
- python编程快速上手第四章_《Python编程快速上手——让繁琐的工作自动化》读书笔记 第四章 列表...
- php mysql 空值_PHP / MySQL插入空值
- linux内核通俗理解,简洁明了!高手带你理解ARM-Linux的启动过程
- HDU 5009 Paint Pearls
- JAVA版村庄哨塔种子_我的世界:top16种子,出生5村庄、地狱堡垒、2哨塔和一堆遗迹...
- ps界面为啥突然变大了_PS如何用快速蒙版抠图,超实用的技巧!!!
- 解决端口占用问题 Port xxxx was already in use
- linux的网易云音乐界面不显示,linux mint19.1解决网易云音乐安装后打不开的问题...
- 站桩是为了理气,气顺了,人自然就不会生病
- 推荐书籍 《半小时漫画经济学1--生活常识篇》
- 手机APP从服务器获取列表和详情
- 前端页面----昵图网(简单版)
- 单片机c语言篮球比分_单片机课程设计篮球计时计分器正文1
热门文章
- 211228 --- JavaScript实现IP访问限制
- 一个js实现银行卡号*格式化方法的演变
- javascript:时间戳转换为日期时间
- android 代码解压,Android开发之旅-解压压缩zip文件(带子目录和中文路径)
- php企业网站通讯录管理系统,EML企业通讯录管理系统v5.4.15 经典版+手机端实时查看人员联系方式+客户关系管理系统...
- 为什么程序员工位上总会摆着小黄鸭?
- mysql卸载与重装(压缩包版)
- [零基础]用docker搭建Hadoop集群
- Java编程思想第四版第十一章习题(下)
- DataVisor大数据独创算法,实现真正智能的反欺诈预警