在移植开始前,先按照《CommonAPI C D Bus in 10 minutes》在x86平台进行了测试,解决了包括dbus patch,expat安装等问题。
接下来是交叉编译,首先是commonAPI库的交叉编译:
只需要在CMakeLists.txt中指定交叉编译工具即可,编译过程没有发现问题。同时可根据需要修改CMAKE_CXX_FLAGS变量来修改编译参数
然后是dbus库的移植,configure参数如下:
此外还需将交叉编译工具链所在位置添加入环境变量:
export PATH=$PATH:${YOUR_PATH}/sysroots/x86_64-oesdk-linux/usr/bin/arm-oe-linux-gnueabi
编译过程出现了很多warning :
vi修改报错路径下的对应文件:
重新编译,该warning不再出现。
编译dbus-runtime的过程和core-runtime类似,这里不再重复,接下来是编译测试代码。
注意在除了编译器设置外,还要添加必要的编译选项(一开始没有链接stdc++编译移植不过)
至此,交叉编译完成!将可执行文件和动态链接库推进目标板测试即可!