TR069协议与商业应用8——移植cwmp到ARM平台运行和测试

本文详细介绍了如何将TR069协议移植到ARM平台,包括编译expat和curl依赖库,编译DataModel层的device.so,以及协议栈程序cwmp。在Ubuntu 18.04环境下,完成交叉编译工具链的准备,然后将编译好的组件拷贝到ARM设备上,进行测试。整个过程涉及到了库文件的移植、配置文件的修改以及软件的部署。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

声明:原创作品,严禁用于商业目的。 如有任何技术问题,欢迎和我交流:19826269205(微信同号)。

准备工作:准备好Ubuntu18.04系统下的交叉编译工具环境。
Ubuntu18.04开发环境:192.168.200.3
CPE设备网络地址:192.168.0.13

课堂链接
免费视频部分

1. 编译安装依赖库

1.1. 编译expat

进入expat目录后,执行如下三条命令:

mkdir tmp
./configure --prefix=$PWD/tmp --host=arm-linux CC=arm-linux-gcc CXX=arm-linux-g++ --with-random
make && make install

1.2. 编译curl

进入curl目录后,执行如下三条命令:

mkdir tmp
./configure --prefix=$PWD/tmp --host=arm-linux CC=arm-linux-gcc CXX=arm-linux-g++ --with-random
make && make install

2. 编译动态库程序(数据模型层)

由于Device.so依赖于uci进行测试,所以需要优先编译uci库并移植到交叉工具链中和开发板,然后再进行make编译出device.so(因为个人实际项目对uci进行修改过,新手可以用uci源码编译)
(1) 编译uci
需要修改Makefile的脚本,把编译生产的so文件和头文件拷贝到交叉编译工具链中 或者单独编译uci。
把uci的头文件拷贝到交叉编译工具链中

scp uci-0.1/uci_config.h  uci-0.1/uci.h uci_internal.h  /home/yy/tr069_arm/host/arm-buildroot-linux-uclibcgnueabihf/sysroot/usr/include   

把uci的动态库so拷贝到交叉编译工具链和开发板,并创建相应的软连接

scp uci-0.1/libuci.so.0.1  /home/yy/tr069_arm/host/arm-buildroot-linux-uclibcgnueabihf/sysroot/usr/lib    
scp uci-0.1/libuci.so.0.1  192.168.0.13:/usr/lib 
ln -sf  libuci.so.0.1 libuci.so

(2) 编译device.so
最后,在DataModel目录执行make, 生成device.so。

3. 编译协议栈程序(核心层)

需要把编译好的依赖移植到交叉编译环境中:
scp expat 和 curl
/home/yy/tr069_arm/host/arm-buildroot-linux-uclibcgnueabihf/sysroot/usr/lib
在cwmp目录执行make, 生成cwmp执行程序。

4. 移植到ARM设备

1.拷贝依赖库到开发板中
交叉编译里面自带libcurl和libexpat,直接拷贝so到开发板中/usr/lib。 同时创建相应的软链接。
也可以用提供好的源码文件进行交叉编译
2. 拷贝编译后的tr069动态库到开发板
scp device.so 192.168.0.13:/usr/lib
3 拷贝编译后的cwmp执行程序到开发板
scp cwmp 192.168.0.13:/usr/bin
4. 拷贝配置文件到开发板,便于测试:
scp etc_config/* 192.168.0.13:/etc/config
修改配置文件中对应的ip地址和ACS URL进行模拟测试。
修改文件:/etc/config/swanif 对应CPE的ip地址
option ipaddr ‘192.168.0.13’
修改/etc/config/cpeagent文件:对应ip地址和ACS URL进行模拟测试。
option acsurl ‘http://81.68.141.224:9090/acs’
option cpe_ipaddr ‘192.168.0.13’

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

kcyuan

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值