OpenWRT支持很多平臺,由于手邊沒有支持的路由器,所以通過X86平臺可以方便的使用PC來安裝運行以及調(diào)試OpenWRT,對于學(xué)習(xí)研究OpenWRT很有幫助,
編譯
編譯環(huán)境
- Linux version 3.19.0-15-generic (buildd@tipua) (gcc version 4.9.2 (Ubuntu 4.9.2-10ubuntu13) ) #15-Ubuntu SMP Thu Apr 16 23:32:01 UTC 2015
下載源碼
參考:https://dev.openwrt.org/wiki/GetSource
git clone git://github.com/openwrt/openwrt.git
更新安裝相關(guān)依賴庫
由于openWRT依賴了很多開源的庫疾棵,所以openWRT編寫一個腳本用于更新和安裝,在scripts目錄下
@ubuntu:~/Work/OpenWRT/openwrt/scripts$ ./feeds update -a
@ubuntu:~/Work/OpenWRT/openwrt/scripts$ ./feeds install -a
編譯OpenWRT會首先檢查一些系統(tǒng)庫痹仙,根據(jù)提示是尔,如果缺少了就使用apt-get install 命令安裝,一般提示缺少awk, openssl這兩個庫
apt-get install gawk #安裝awk庫
openssl比較特殊开仰,由于版本迭代較快拟枚,代碼結(jié)構(gòu)有差異,版本用的不對可能導(dǎo)致編譯失敗众弓。
根據(jù)Makefile看出這個版本是的openssl對應(yīng)的是1.0.2版本, 我們直接下載編譯安裝1.0.2版本openssl
wget https://www.openssl.org/source/old/1.0.2/openssl-1.0.2l.tar.gz #下載
./config shared --prefix=/usr/local --openssldir=/usr/local/openssl #編譯為動態(tài)庫
make & make install
配置
@ubuntu: make defconfig
@ubuntu: make menuconfig
- Target System 選擇「X86」
- Target Images 增加「Build VMware image files VMDK」選項
- 增加支持「Build the OpenWrt SDK」
編譯
make V=99
查看輸出
-rw-r--r-- 1 zhenghao zhenghao 592 Aug 29 10:55 md5sums
-rw-r--r-- 1 zhenghao zhenghao 75513842 Aug 29 10:56 OpenWrt-SDK-x86-generic_gcc-5.3.0_musl-1.1.16.Linux-i686.tar.bz2
-rw-r--r-- 1 zhenghao zhenghao 5876883 Aug 29 10:55 openwrt-x86-generic-combined-ext4.img.gz
-rw-r--r-- 1 zhenghao zhenghao 10158080 Aug 29 10:55 openwrt-x86-generic-combined-ext4.vmdk
-rw-r--r-- 1 zhenghao zhenghao 5556285 Aug 29 10:55 openwrt-x86-generic-combined-squashfs.img.gz
-rw-r--r-- 1 zhenghao zhenghao 5898240 Aug 29 10:55 openwrt-x86-generic-combined-squashfs.vmdk
-rw-r--r-- 1 zhenghao zhenghao 1781770 Aug 29 10:54 openwrt-x86-generic-generic-rootfs.tar.gz
-rw-r--r-- 1 zhenghao zhenghao 1841728 Aug 29 10:54 openwrt-x86-generic-rootfs-ext4.img.gz
-rw-r--r-- 1 zhenghao zhenghao 1474163 Aug 29 10:54 openwrt-x86-generic-rootfs-squashfs.img.gz
-rw-r--r-- 1 zhenghao zhenghao 3789312 Aug 29 10:54 openwrt-x86-generic-vmlinuz
drwxr-xr-x 10 zhenghao zhenghao 4096 Aug 29 10:56 packages
-rw-r--r-- 1 zhenghao zhenghao 997 Aug 29 10:55 sha256sums
安裝
-
選擇自定義虛擬機安裝
-
選擇操作系統(tǒng) OpenWRT15.05對應(yīng)的內(nèi)核是3.1
-
選擇硬盤類型艉IDE
-
將虛擬機文件夾中的vmdk文件替換為上面編譯生成的openwrt-x86-generic-combined-ext4.vmdk
-
加載運行恩溅,看到br-len打印就可以輸入Enter進入shell交互界面了
-
這里就是一個可以交互的終端了