openwrt ubus 移植到ARM上
由于项目的需要,需要把openwrt 上的ubus库移植到ARM上,ubus是用于openwrt内部模块间通信的库,类似于D-BUS,不过是它的一个精简版,具体的可以到openwrt官网上去了解。宿主机为 ubuntu 10.04 交叉编译工具链版本为 arm-linux-gcc 4.5.1,目标机为 s3c6410/s5pv210源码为ubus-2014-0
由于项目的需要,需要把openwrt 上的ubus库移植到ARM上,ubus是用于openwrt内部模块间通信的库,类似于D-BUS,不过是它的一个精简版,具体的可以到openwrt官网上去了解。
宿主机为 ubuntu 10.04 交叉编译工具链版本为 arm-linux-gcc 4.5.1,目标机为 s3c6410/s5pv210
源码为ubus-2014-09-17-4c4f35cf2230d70b9ddd87638ca911e8a563f2f3.tar.gz,具体的步骤如下:
1.解压源码
2.修改CMakeList.txt配置如下:
在开头加上如下几句,可以看到它依赖libubox,关于libubox可以参看我的另一篇文章,openwrt libubox移植到ARM上
#告知当前使用的是交叉编译方式,必须配置
SET(CMAKE_SYSTEM_NAME Linux)
#指定C交叉编译器,必须配置
#或交叉编译器使用绝对地址
SET(CMAKE_C_COMPILER "arm-linux-gcc")
#指定C++交叉编译器
SET(CMAKE_CXX_COMPILER "arm-linux-g++")
include_directories("/root/softwares/openwrt-a8/json-c/include/json-c")
include_directories("/root/softwares/openwrt-a8/json-c/include")
link_directories("/root/softwares/openwrt-a8/json-c/lib")
include_directories("/root/softwares/openwrt-a8/libubox/include")
link_directories("/root/softwares/openwrt-a8/libubox/lib")
3.cmake .
4.make
5.在源码根目录即可生成库和可执行文件
ubusd 为ubus服务
ubus 为ubus客户端
更多推荐
所有评论(0)