openwrt目录与编译

一、目录
1. package目录
这个目录里面的文件主要是makefile。我觉得openwrt更加像是一个shell + Makefile编译代码框架,wrt源代码并没有linux kernel,file system,luci和各种各样的应用程序,它把这些软件当作package,通过每个package的makefile,去下载(本地有源码的不用去下载),编译。这样做法的好处是精简openwrt源码包,用户自由选择各种package。用户可以通过其template,添加自己的package。
2. dl目录
package的makefile下载的源码压缩包就放在dl文件夹里。
3. build_dir
dl加压缩后的代码存放在build_dir, gcc真正编译的源码都在build_dir, 所以如果修改代码,必须让build_dir里的代码更改。也就是说在package或是target的代码修改,需要把修改同步到build_dir中。
4. tools和toolchain目录
wrt的包含了交叉编译工具链, 这对于用户来说很方便,省去了复杂的交叉工具链的编译与安装。

这两个目录主要是编译固件、编译器、c library的一些工具。make -j10 V=s 表示有十个线程编译系统,并且输出详细信息。

5. staging_dir

存放编译好的工具链。

二、编译
./scripts/feeds update -a 更新feeds.conf或是feeds.conf.default定义的软件包
./scripts/feeds install -a  做软链接,主目录/package/feeds/XX -> 主目录/feeds/XX
make menuconfig
make

你可能感兴趣的:(框架,openwrt,交换机)