外观
踩坑GitHub frankaemika/libfranka10 个月前
libfranka 0.18.1构建报错找不到tinyxml2Config.cmake
本文由 AI 根据公开内容整理,可能有误,请以原文为准:Unable to build 0.18.1 on recommended Ubuntu 22.04(GitHub frankaemika/libfranka #215)
状态:已解决
问题
在Ubuntu 22.04按官方README编译libfranka 0.18.1时,CMake报错提示未找到tinyxml2包配置文件(tinyxml2Config.cmake或tinyxml2-config.cmake),且未在CMAKE_MODULE_PATH中提供Findtinyxml2.cmake,导致构建中断。该问题源于新版本将依赖改为静态库构建后,CMake查找目标名称变更与系统apt安装的tinyxml2不匹配。
环境
Ubuntu 22.04, GCC 11.4.0, CMake 3.22, libfranka 0.18.1, Boost 1.74.0, Eigen3
解决办法
- 推荐方案:将libfranka升级至0.18.2及以上版本,该版本已修复tinyxml2的CMake查找配置问题。
- 临时绕过:修改libfranka源码CMakeLists.txt第55行附近的find_package调用,将查找目标从
tinyxml2改为TinyXML2::TinyXML2(与0.17.0版本一致),使CMake能正确识别系统通过apt安装的tinyxml2包。 - 环境建议:优先使用官方提供的最新Docker容器进行开发构建,该容器内置完整依赖且支持级别最高,可避免本地环境配置差异导致的构建问题。
讨论原作者:@fspindle 等,版权归原作者所有。
来源
本页事实对应的公开页面,以原文为准。