官網安裝編譯推薦:php
https://wiki.openwrt.org/doc/howto/buildroot.exigencelinux
https://wiki.openwrt.org/doc/howto/buildgit
https://forum.openwrt.org/viewtopic.php?pid=31794#p31794github
1. hostsvn
32位主機工具
~$uname -a Linux yuxi-T530 3.13.0-66-generic #108-Ubuntu SMP Wed Oct 7 15:21:40 UTC 2015 i686 i686 i686 GNU/Linux ~$lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 14.04.3 LTS Release: 14.04 Codename: trusty
2. 基礎軟件安裝flex
這些軟件是openwrt編譯成功或正常使用的前提,可能部分軟件已安裝成功。ui
sudo apt-get install build-essential subversion git-core libncurses5-dev zlib1g-dev gawk flex quilt libssl-dev xsltproc libxml-parser-perl mercurial bzr ecj cvs unzip
sudo apt-get install gettext ocaml-nox ocaml-findlib sharutils mtd-utils u-boot-tools device-tree-compiler
3. 下載openwrt源碼es5
github:https://github.com/openwrt/openwrtspa
git clone https://github.com/openwrt/openwrt.git
git clone -b chaos_calmer git://github.com/openwrt/openwrt.git
4. 下載安裝可用feeds
cd openwrt ./scripts/feeds update -a ./scripts/feeds install -a
傳統的linux操做系統在編譯某一個軟件的時候,會檢查其依賴軟件及頭文件是否存在,若是沒有安裝,則會報缺乏頭文件或缺乏連接庫的錯誤,編譯將退出。
feeds是openwrt開發所須要的軟件包套件的工具及更新地址集合,這些軟件包經過一個統一的接口地址進行訪問。這樣用戶能夠不用關心擴展包的存儲位置,能夠減小擴展軟件包和核心代碼部分的耦合。它由兩部分組成,即擴展包位置配置文件feeds.conf或feeds.conf.default和腳本工具feeds。
update:下載在feeds.conf或feeds.conf.default文件中的軟件包列表並建立索引。-a表示更新全部軟件包。只有更新後才能進行後面的操做。
install:安裝軟件包以及它所依賴的軟件包,從feeds目錄安裝到package目錄,即在package/feeds目錄建立軟件包的軟連接。只有安裝以後,在後面執行make menuconfig時,才能夠對相關軟件包是否編譯進行選擇。
編譯擴展安裝過程就是將feeds目錄下的軟件包銜接到package/feeds對應目錄下。
feeds.conf由3部分組成,方法,名字和源。支持的feeds方法有3種:
》src-cpy經過從數據源路徑複製數據;
》src-git經過使用git從代碼倉庫地址下載代碼數據;
》src-svn經過使用svn從代碼倉庫地址下載代碼數據。
5. build
openwrt自動化編譯平臺:http://buildbot.openwrt.org:8010/