KDL是OROCOS工程的一个库,其全称为Kinematics and Dynamics Library。
web site: http://www.orocos.org/kdl
在此网站上并只有非常老的版本的源码包(最新的为0.4版的)下载,对于新版本只是提供了一个SVN地址:
http://svn.mech.kuleuven.be/repos/orocos/trunk/kdl
可以使用svn客户端直接check out源代码即可。
下面介绍其编译过程。
1. cd kdl #进入kdl源码目录
2. mkdir build #建立编译文件夹
2. cd build
3. ccmake .. #设置参数
4. press [t] to advanced mode and then change some flags #修改参数
a) modify OROCOS_INSTALL to /usr/local
b) modify CMAKE_INSTALL_PREFIX to /usr/local
c) enable OROCOS_PLUGIN
d) enable BUILD_TESTS
e) specify OROCOS_INSTALL directory
f) add "-ldl" to "CMAKE_EXE_LINKER_FLAGS"
g) configure (press c) #这是会生成configure信息,可根据信息判断那些参数可能设置有问题
5. Generate (press g) #生成Makefile
6. make #编译
7. make docs #生成文档
8. make install #安装头文件和库
如果修改参数步骤中没有g这一步骤,make的时候会如下错误信息:
Linking CXX executable framestest
/usr/local/lib/libcppunit.so: undefined reference to `dlsym'
/usr/local/lib/libcppunit.so: undefined reference to `dlopen'
/usr/local/lib/libcppunit.so: undefined reference to `dlclose'
cppunit是在测试程序中使用的,所以如果没有使能BUILD_TESTS的话就算没有g也是可以编译通过的。
当然了还有一种可能是/usr/lib/libdl.so出问题了,这个库文件是glibc里的,所以需要重新装一下glibc。在ubuntu下只需要apt-get install build-essential即可。
还有一些编译细节可以参考kdl/INSTALL,ccmake的使用可以在进入之后按[h]键查看帮助。
ps: 从ccmake里面显示的KDL_VERSION和kdl/src目录下的.hpp文件里面的信息都显示使用的kdl版本是1.0.0
测试环境:
VMware 5.5.1 & Ubuntu 8.10 & gcc4.3.2
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment