|
本帖最后由 317443108 于 2014-6-3 17:08 编辑
1. 搭建交叉编译环境- sudo apt-get install build-essential u-boot-tools uboot-mkimage gcc-arm-linux-gnueabihf ncurses-dev -y
复制代码 2.安装依赖包- sudo apt-get install libncurses5-dev zlib1g-dev gawk flex patch git-core g++ subversion -y
复制代码 3.获取openwrt的源代码- git clone https://github.com/mirrors/openwrt
复制代码 4.进入openwrt源目录5.扩展软件包,可选
进入源码根目录下面后,打开feeds.conf.default,其中的内容是你得openwrt环境中的额外软件包的软件列表索引(类似于软件源)- sudo vim feeds.conf.default
复制代码 其中,packages、xwrt、luci、routing、telephony下载是默认的。你可以把你需要的软件源的注释去掉。
这里贴出feeds.conf.default 文件下的内容
以上内容可根据需求下载,但至少包含packages。
- packages – 提供众多库, 工具等基本功能. 也是其他feed所依赖的软件源, 因此在安装其他feed前一定要先安装packages!
- luci – OpenWrt默认的GUI(WEB管理界面).
- xwrt – 另一种可替换LuCI的GUI
- qpe – DreamBox维护的基于Qt的图形界面, 包含Qt2, Qt4, Qtopia, OPIE, SMPlayer等众多图形界面.
- device – DreamBox维护与硬件密切相关的软件, 如uboot, qemu等.
- dreambox_packages – DreamBox维护的国内常用网络工具, 如oh3c, njit8021xclient等.
- desktop - OpenWrt用于桌面的一些软件包.
- xfce - 基于Xorg的著名轻量级桌面环境. Xfce建基在GTK+2.x之上, 它使用Xfwm作为窗口管理器.
- efl - 针对enlightenment.
- phone -针对fso, paroli.
6.由步骤5确定软件源之后,就是更新软件源了:- ./scripts/feeds update -a
复制代码 安装下载好的包:- ./scripts/feeds install -a
复制代码 7.执行完上面命令之后你就可以获取全部的openwrt源码了,接着,我们配置openwrt编译系统
具体配置参见下方图片:
注意:Target Profile 要根据你相应的板子进行选择,否则到时u-boot会启动不了。
其中
a.Target Images —>
b.配置无线网卡,V2/V3都是用的rtl8188cus无线网卡
Kernel modules —>
Wireless Drivers —>
-*- kmod-cfg80211…………………. cfg80211 – wireless configuration API
<*> kmod-lib80211……………………………… 802.11 Networking stack
{M} kmod-mac80211………………… Linux 802.11 Wireless Networking Stack
kmod-rtl8192cu………………….. Realtek RTL8192CU/RTL8188CU suppor
t{M} kmod-rtlwifi……………………………. Realtek common driver part
c.Lucl系统快速配置接口
LuCI —>
1. Collections —>
{*} luci luci-ssl……………………. Standard OpenWrt set with HTTPS
4. Themes —>
-*- luci-theme-base…………………………. Common base for al
-*- luci-theme-bootstrap……………………… Bootstrap Theme
<*> luci-theme-freifunk-bno……………….. Freifunk Berlin Nordost Theme
<*> luci-theme-freifunk-generic………………….. Freifunk Generic Theme
<*> luci-theme-openwrt……………………………………. OpenWrt.org
5. Translations —>
<*> luci-i18n-chinese………………….. Chinese (by Chinese Translators)
-*- luci-i18n-english………………………………………… English
8.编译openwrt系统- make -j8 V=s ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-
复制代码 由于OpenWrt整个系统非常庞大, 编译很慢. "-j 8" 表示用8线程进行编译, "V=s"编译的时候显示编译信息. 如果你的电脑是4核建议你用8线程进行编译, 双核建议你使用4线程. 这里测试8线程编译需要一个小时才能编译完成.
9.制作卡系统
从SD卡启动顺序是A20—>u-boot–>uImage–>OpenWrt
a.先格式化TF卡前面的1M空间,这里假设TF卡的设备是sdb- sudo dd if=/dev/zero of=/dev/sdb bs=1M count=1
复制代码 b.把openwrt-sunxi-Cubieboard2-u-boot-with-spl.bin写入卡中- cd bin/sunxi/uboot-sunxi-Cubieboard2/
复制代码- sudo dd if=openwrt-sunxi-Cubieboard2-u-boot-with-spl.bin of=/dev/sdb bs=1024 seek=8
复制代码 c.完成上面步骤后,可以把SD卡插到板子上,上电会看到下面的打印信息。
说明u-boot已经完全启动,下面我们对SD卡建立分区表。
d.将SD卡插回电脑,使用fdisk创建分区表:
跟默认值对应的可直接回车,如Partition number (1-4, default 2): (直接回车)
e.格式化分区:f.挂载分区- sudo mount /dev/sdb1 /mnt/usb
- sudo mount /dev/sdb2 /mnt/usb2
复制代码 g.制作u-boot环境变量文件,将uImage拷贝到第一分区,让u-boot读取,引导系统。- sudo cp /openwrt/bin/sunxi/sun7i-a20-cubieboard2.dtb .
- sudo cp /openwrt/bin/sunxi/openwrt-sunxi-uImage uImage
- sudo cp /openwrt/bin/sunxi/uboot-sunxi-Cubieboard2/openwrt-sunxi-Cubieboard2-uEnv.txt uEnv.txt
- sudo vim uEnv.txt
复制代码 将uEnv.txt中的dtd修改为sun7i-a20-cubieboard2.dtb ,如下
h.拷贝第二分区文件- sudo dd if=/openwrt/bin/sunxi/openwrt-sunxi-root.ext4 of=/dev/sdb2 bs=1M
复制代码 到此,系统已经做好了,将SD卡插入板子,好好享受胜利的喜悦吧。
另外,你可以发布你制作的系统,让别人可以通过win32diskimager来烧写你的系统进他的SD卡,你的小伙伴听到会很开心把。哈哈- sudo dd if=/dev/sdb of=Openwrt.img bs=4M
复制代码
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
评分
-
查看全部评分
|