针对LinkIt Smart 7688的firmware和uboot的编译,走了些弯路,但也算是编译成功,这里提两点:
(1)编译环境不是传统意义的64位机,而是32位机
(2)在编译过程中,一定要保证网络的通畅,不然注定会失败
一 自制Firmware
1 安装虚拟机和Ubuntu
由于LinkIt Smart 7688跑的是OpenWrt,而OpenWrt是一个类Linux系统,故要想定制自己的固件(Firmware),需要首先建立Linux宿主机环境,本人习惯使用VMWare Workstation+Ubuntu,具体可参考百度经验:VMware Workstation虚拟机怎么安装和怎样在VMware虚拟机中使用安装并设置Ubuntu系统。
2 安装编译包
在编译OpenWrt时,需要一些包工具的支持,故需要安装一些必要的包,如下所示:
$ sudo apt-get install git g++ libncurses5-dev subversion libssl-dev gawk libxml-parser-perl unzip
3 下载OpenWrt
从官网下载完整的OpenWrt源码,它包括完整的编译环境,Linux内核等。
$ git clone git://git.openwrt.org/15.05/openwrt.git
4 创建配置文件
从给定的默认模板文件,创建编译时需要的配置文件feeds.conf
$ cd openwrt $ cp feeds.conf.default feeds.conf
5 定制LinkIt Smart 7688
针对LinkIt Smart 7688,生成一个与其相对应的配置文件。
$ echo src-git linkit https://github.com/MediaTek-Labs/linkit-smart-7688-feed.git >> feeds.conf
6 下载固件包
根据配置文件,更新下载编译固件需要的包
$ ./scripts/feeds update
7 安装包
正式安装各种包
$ ./scripts/feeds install –a
8 配置OpenWrt
在编译前,需要配置一下OpenWrt,主要有3处,如下图所示:
$ make menuconfig
9 编译固件
正式开始,在编译过程中,需要连接网络,因为在编译过程中,需要下载一些库文件,不然编译不通过。
$ make V=99
10 生成固件
二 自制Bootloader
1 下载源码
从联发科实验室官网,下载针对LinkIt Smart 7688的bootloader源码
$ git clone https://github.com/MediaTek-Labs/linkit-smart-uboot.git
2 建立工具链
安装交叉工具链,它在编译bootloader时使用。
$ cd linkit-smart-uboot $ sudo tar xjf buildroot-gcc342.tar.bz2 -C /opt/
3 编译Bootloader
编译
$ make
4 生成bootloader