Ubuntu12.04 LTS編譯openwrt
阿新 • • 發佈:2019-01-24
一. 什麼是OpenWrt?
OpenWrt可以被描述為一個嵌入式Linux發行版,(主流路由器韌體有dd-wrt,tomato,openwrt三類),而不是試圖建立一個單一的、靜態的系統。
OpenWrt的包管理提供了一個完全可寫的檔案系統,從應用程式供應商提供的選擇和配置,並允許您自定義的裝置,以適應任何應用程式。
二.開始編譯openwrt
由於最近想在openwrt上移植USB轉串列埠的驅動,所以想重新編譯openwrt。我的開發環境是Ubuntu 12.04 LTS,虛擬機器用的VMWARE和irtualbox。有意思的是,openwrt可以編譯生成
VMDK,這樣我們可以用虛擬機器模擬路由器的硬體環境,在上面跑起openwrt。
1. 首先得安裝一些編譯OPENWRT時要用到的工具:
sudo apt-get install g++ libncurses5-dev zlib1g-dev bison flex unzip autoconf gawk make gettext gcc binutils patch bz ip2 libz-dev asciidoc subversion
2. 下載原始碼:
cd /home/hndz
sudo mkdir myopenwrt
cd myopenwrt
使用git下載:
git clone https://git.openwrt.org/openwrt.git
3. (可選)更新各軟體包:
cd openwrt
./scripts/feeds update -a
./scripts/feeds install -a
4. 編譯並檢視你的編譯環境是否有遺漏或者不合適的依賴關係,如果有請參考這篇文章:
編譯方法:
make menuconfig (推薦)
make defconfig
make prereq
5. 安裝LuCI
./scripts/feeds update
./scripts/feeds install -a -p luci
6. 配置編譯
cd openwrt
make v=99
生成的檔案在目錄/bin/x86下。
7. 需要注意的問題:
(1)如果在編譯過程中遇到問題可以參考我openwrt 分類下的問題整理這篇文章。
(2)vmware和irtualbox我都驗證過,都沒有問題。但是要注意,在使用vmware建立虛擬機器的過程中硬碟格式選擇IDE格式,預設SCSI格式不成功,現在也不知道什麼原因。