OpenWrt-SDK-编译生成ipk软件包

版本:Barrier Breaker

类型:brcm2708

下载SDK:http://downloads.openwrt.org/barrier_breaker/14.07/brcm2708/generic/OpenWrt-SDK-brcm2708-for-linux-x86_64-gcc-4.8-linaro_uClibc-0.9.33.2.tar.bz2


说明:

1.SDK中的交叉编译工具链存在问题,编译过程中相应的工具经常会出错,例如二进制文件无法执行。因此,最好的办法是先行编译对应版本的OpenWrt,勾选交叉编译选项,编译完成后将staging_dir目录拷入SDK解压文件夹中,替换原有文件。

2.BB版本下brcm2708在使用ccache_cc时存在bug:https://dev.openwrt.org/ticket/13949

OpenWrt-SDK-编译生成ipk软件包_第1张图片

因此,在SDK目录下,打开Config-build.in文件,将其中的config CCACHE 默认值从“y”改为“ ”。编译时将不会使用ccache_cc命令。


步骤:SDK/package编写helloworld及Makefile

关于这一部分,网上有许多资料:

http://blog.chinaunix.net/uid-29418452-id-4071751.html

http://blog.csdn.net/woods2001/article/details/8137755

http://my.oschina.net/hevakelcj/blog/410633


步骤:编译

进入目录scripts/config/ 执行make clean命令消除原有编译文件,不然编译时会出现error。

make V=99 编译且输出调试信息


编译完成后的ipk包:

路径/bin/brcm2708/packages/base内


步骤:openwrt上安装运行

OpenWrt-SDK-编译生成ipk软件包_第2张图片


感想:下载的SDK解压后直接编译错误百出,实在没办法了就直接把原来编译barrier_breaker时生成的staging_dir整个拷到SDK中,替换原来的。。。。然后,就生成了ipk包。。。。。



你可能感兴趣的:(IoT-OpenWRT)