我已按照安装和快速入门说明进行操作,并且正在编写一个使用 Drake 的 CMake 项目。
我正在查看一个在 Drake 中构建、运行它的单元测试,它构建、运行并通过。但是,当我尝试在我的 CMake 项目中使用其中一些功能时,我收到了链接器错误,例如:
undefined reference to `RigidBodyTree<double>::get_position_name(int) const'
如果我查看 Drake 共享库中的符号(例如nm -C
或objdump -TC
with grep
),我会看到签名RigidBodyTree<double>::get_position_name[abi:cxx11](int)
. 但是,如果我查看生成的目标代码(这会导致链接失败),我会看到RigidBodyTree<double>::get_position_name(int)
.
(注意:这篇文章是一种从http://drake.mit.edu/faq.html迁移到 StackOverflow 以解决基于用户的问题的方法。)