小編給大家分享一下OpenWRT中目錄分析與make過程的示例,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
在大理州等地區(qū),都構建了全面的區(qū)域性戰(zhàn)略布局,加強發(fā)展的系統(tǒng)性、市場前瞻性、產品創(chuàng)新能力,以專注、極致的服務理念,為客戶提供網站制作、成都網站設計 網站設計制作按需網站開發(fā),公司網站建設,企業(yè)網站建設,品牌網站設計,全網營銷推廣,外貿網站制作,大理州網站建設費用合理。
OpenWrt 目錄下的 trunk 結構如下:
[trunk]$ ls bin/ Config.in feeds.conf.default rules.mk tmp/ BSDmakefile dl/ include/ scripts/ toolchain/ build_dir/ docs/ LICENSE package/ staging_dir/ tools/ config/ feeds/ Makefile README target/
有幾個重要目錄:package, target, build_dir, staging_dir, bin, dl, ...
---include目錄是存放 *.mk 文件。這里的文件上是在Makefile里被include的
---build_dir/host目錄是建立工具鏈時的臨時目錄
---build_dir/toolchain-<arch>*對應硬件的工具鏈的目錄
---staging_dir/toolchain-<arch>* 是工具鏈的安裝位置
---target/linux/<platform>目錄里面是各個平臺(arch)的相關代碼
---target/linux/<platform>/config-3.10文件就是配置文件了
---dl目錄是'download'的縮寫, 在 編譯前期,需要從網絡下載的數據包都會放在這個目錄下,這些軟件包的一個特點就是,會自動安裝在所編譯的固件中,也就是我們make menuconfig的時候,為固件配置的一些軟件包。如果我們需要更改這些源碼包,只需要將更改好的源碼包打包成相同的名字放在這個目錄下,然后開始編 譯即可。編譯時,會將軟件包解壓到build_dir目錄下。
---build_dir/目錄下進行解壓,編譯和打補丁等。
---package/目錄里面包含了我們在配置文件里設定的所有編譯好的軟件包。默認情況下,會有默認選擇的軟件包。
在openwrt中ipk就是一切, 我們可以使用:
$ ./scripts/feeds update #來對軟件包進行更新.
$ ./scripts/feeds search nmap #查找軟件包'nmap' Search results in feed ’packages’: nmap Network exploration and/or security auditing utility
$ ./scripts/feeds install nmap #安裝'nmap'這個軟件
---feeds/packages為執(zhí)行./scripts/feeds install 之后的package。
---bin目錄下生成了很多bin文件,根據不同的平臺來區(qū)分。
---bin/<platform>/package目錄里面有很多ipk后綴的文件,都是package目錄下的源碼在build_dir目錄下編譯后的生成的結果。
注:以上摘自:[openwrt框架分析]
比如:lua包,mips架構。
make步驟:
在 make 時,make 讀取到 package/utils/lua/Makefile 文件內容。
如果git或svn源,那么就會在 tmp/dl/ 目錄下將源代碼 clone 下來。然后,將 clone 下來的源碼刪除 .git 或 .svn 目錄刪除,然后壓縮成 lua-1.5.1.tar.gz 文件,并復制到 dl/ 目錄下。
在編譯前段,將 dl/ 目錄下的 lua-1.5.1.tar.gz 文件解壓到 build_dir/target-mips_<board>/ 目錄下。
進入 build_dir/target-mips_<board>/lua-1.5.1/
./configure,make,make install。
make install 會將生成的二進制文件安裝到 build_dir/target-mips_<board>/lua-1.5.1/ipkg-ar71xx/ 目錄下。
最后將 build_dir/target-mips_<board>/lua-1.5.1/ipkg-ar71xx/ 打成包成lua-5.1.5-1_ar71xx.ipk,并復制到 bin/ar71xx/packages/base/ 。
以上是“OpenWRT中目錄分析與make過程的示例”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注創(chuàng)新互聯(lián)行業(yè)資訊頻道!
名稱欄目:OpenWRT中目錄分析與make過程的示例
網頁URL:http://vcdvsql.cn/article32/pepspc.html
成都網站建設公司_創(chuàng)新互聯(lián),為您提供服務器托管、網站內鏈、面包屑導航、網站導航、網站改版、App設計
聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)