码迷,mamicode.com
首页 > 其他好文 > 详细

OpenWRT开发之——SDK

时间:2015-05-05 00:08:33      阅读:1293      评论:0      收藏:0      [点我收藏+]

标签:

为了达到自己编写一个程序打包成ipk,并能在OpenWRT上运行的目的。我在网上找了些学习的资料。

本人参考的是:如何在OpenWRT上做开发

感谢该网友的耐心解答。虽然有现成的步骤,博主还是喜欢亲自实践一下,写下自己的实践过程。


第一步:生成SDK

make menuconfig 选上 “Build the OpenWRT SDK”

在 trunk目录下,执行:

$ make menuconfig

选择对应的"Target System"与"Target Profile",并选上"Build the OpenWrt SDK"。

技术分享

然后 Save,退出。再make一次。

$ make V=99

make 完成之后,在 bin/ar71xx/ 目录下会生成SDK的压缩文件:

OpenWrt-SDK-ar71xx-generic_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-i686.tar.bz2

第二步:安装SDK

将上面所生成的 OpenWrt-SDK-ar71xx-generic_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-i686.tar.bz2 复制到其它路径下(指可以不在OpenWrt的源码路径下),再解压出来。

比如我将其放到 ~/Workspace/OpenWRT/ 路径下:

$ cp bin/ar71xx/OpenWrt-SDK-ar71xx-generic_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-i686.tar.bz2 ~/Workspace/OpenWRT
$ cd ~/Workspace/OpenWRT
$ tar jxvf OpenWrt-SDK-ar71xx-generic_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-i686.tar.bz2

在 ~/Workspace/OpenWRT/ 路径下就生成了 OpenWrt-SDK-ar71xx-generic_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-i686 目录。

据说这个目录结构跟 OpenWrt的源码目录结构差不多。


第三步:创建项目程序

其实,这里可以是任意我们想要加入的程序,库等。这里就以helloword为例。

在任意路径下,创建helloword项目。比如这里还是在 ~/Workspace/OpeWRT 目录下。

$ cd ~/Workspace/OpenWRT
$ mkdir helloword
$ cd helloword
$ touch helloword.c Makefile

在 ~/Workspace/OpenWRT/ 目录下创建了 helloword 目录,并生成 helloword.c与Makefile文件。

如下为 helloworld.c的内容:

#include <stdio.h>

int main()
{
    printf("This is my hello word!\n");
    return 0;
}

Makefile的内容:

helloworld : helloworld.o
    $(CC) $(LDFLAGS) helloworld.o -o helloworld

helloworld.o : helloworld.c
    $(CC) $(CFLAGS) -c helloworld.c

clean :
    rm *.o helloworld

首先,确保在程序没问题,在本地能正常编过。为了检验一下,可以就地 make 一下,看程序本身有没有问题。

这个程序都如些之简单了,本人自己了make了一下,OK,再run了一下,正常。


第四步:将项目加入到OpenWrt的packages中

明日继续~



OpenWRT开发之——SDK

标签:

原文地址:http://my.oschina.net/hevakelcj/blog/410633

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!