Openwrt學習之路-(2-Openwrt directory structure)

題圖:gratisography

Openwrt directory structure

了解Openwrt的目錄結(jié)構(gòu)是學習一個新系統(tǒng)最基礎(chǔ)也是最重要的部分。試想如果你想加一行代碼進行修復bug,卻花了半個小時才找到相應(yīng)的位置输瓜,那是多么悲催啊,所以懂得系統(tǒng)框架可以讓你在開發(fā)過程不會跑偏林束、快速定位判导,讓工程項目規(guī)范化等咨察。

目錄結(jié)構(gòu)

如圖是openwrt的基本的目錄結(jié)構(gòu)论熙,其中白色部分是直接下載源碼就有的源目錄,藍色部分則是通過make之后產(chǎn)生的目錄(其中feeds目錄則是通過命令./scripts/feeds update -a;./scripts/feeds install -a之后安裝的擴展包目錄摄狱,這個目錄將所有的文件鏈接到package/feeds/中去了)脓诡,下面就對各目錄進行簡要說明。

1.tool和toolchain目錄

編譯固件image/獲取內(nèi)核頭文件/二進制編譯器和調(diào)試器/c庫文件媒役,需要用到的通用工具祝谚。

2.include目錄

編譯時的頭文件索引,源碼包就有酣衷,包含一些編譯用的通用腳本和include宏定義交惯。比較重要的包括:package.mk文件(幾乎每個package目錄中的模塊的makefile中都提到它)

3.scripts目錄

對openwrt的包進行管理的perl腳本,源碼包就有穿仪,存放各類腳本的目錄席爽。比如:feeds腳本,使用.scripts/feeds update -a或者.scripts/feeds install -a啊片,就可以對feeds.conf.default中列舉的文件進行處理了只锻。

4.target目錄

包含了特定平臺的文件,固件鏡像和內(nèi)核構(gòu)建過程的索引紫谷,以及生成編譯器各編譯工具齐饮。

  • linux目錄下為各個平臺相應(yīng)的內(nèi)核patches,配置文件等笤昨;
  • imagebuilder目錄則掃描如何生成這個平臺的固件祖驱,源碼包就有的,用來指導如何編譯firmware和內(nèi)核以及sdk的瞒窒。

5.package目錄和feeds目錄

在openwrt中羹膳,基礎(chǔ)的軟件包目錄為package,擴展的軟件包在feeds中根竿。

feeds中的軟件擴展了openwrt的基本功能陵像,它將所有的軟件鏈接到package/feeds中。里面存放的就是按照 feeds.conf.default文件中列舉的要處理的文件寇壳,所展開得到的目錄醒颖。目錄中存放的東西,和package目錄中大致相似壳炎。指導如何下載和編譯對應(yīng)模塊的泞歉。

這些軟件大多數(shù)都是編譯成.ipk格式的逼侦,這里面有內(nèi)核模塊文件,有各種軟件的源碼腰耙,以及patch文件和Makefile用來下載源碼的榛丢。

6.dl目錄

編譯工具、目標挺庞、package所需要的軟件包將從網(wǎng)上下載放到dl目錄中

7.build_dir目錄

一個臨時目錄晰赞,用來將所有需要編譯的軟件源碼放到這個目錄中進行編譯。它包括一下三個目錄:

  • build_dir/host: 與編譯目標無關(guān)的工具的臨時文件夾
  • build_dir/<arch>*: 作為所有目標选侨,package編譯的臨時目錄
  • build_dir/toolchain-<arch>*:編譯特定體系的交叉編譯鏈的文件夾

8.staging_dir目錄

用于存放構(gòu)建目標系統(tǒng)鏡像的工具軟件掖鱼,包括:

  • staging_dir/host: 宿主系統(tǒng)使用的工具
  • staging_dir/<arch>*: 目標系統(tǒng)使用的軟件軟件包
  • staging_dir/<toolchain-<arch>*: 交叉編譯工具鏈

9.bin目錄

make之后的新增目錄,用來存放make的結(jié)果援制。比如我是用來編譯ramips的戏挡,則此目錄中會有:ramips子目錄,其中又包含:packages子目錄(里面含有各種.ipk文件晨仑,以及一個Packages文件用來介紹此目錄中的每個ipk文件)和可以燒入CPE的openwrt-ramips-mt7620-xiaomi-miwifi-mini-squashfs-sysupgrade.bin文件褐墅。

10.其他文件

  • Makefile文件:make命令的總?cè)肟?/li>
  • rules.mk文件:定義了一系列在make時使用的規(guī)則
  • .config隱藏文件:make menuconfig后的config結(jié)果的存放文件。
  • .config.old隱藏文件:老的.config文件

Openwrt directory structure的分析就到這邊洪己,有感悟時會持續(xù)會更新掌栅。

注:以上內(nèi)容都是本人在學習過程積累的一些心得,難免會有參考到其他文章的一些知識码泛,如有侵權(quán)猾封,請及時通知我,我將及時刪除或標注內(nèi)容出處噪珊,如有錯誤之處也請指出晌缘,進行探討學習。文章只是起一個引導作用痢站,詳細的數(shù)據(jù)解析內(nèi)容還請查看Openwrt相關(guān)教程磷箕,感謝您的查閱。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末阵难,一起剝皮案震驚了整個濱河市岳枷,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌呜叫,老刑警劉巖空繁,帶你破解...
    沈念sama閱讀 210,914評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異朱庆,居然都是意外死亡盛泡,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 89,935評論 2 383
  • 文/潘曉璐 我一進店門娱颊,熙熙樓的掌柜王于貴愁眉苦臉地迎上來傲诵,“玉大人凯砍,你說我怎么就攤上這事∷┲瘢” “怎么了悟衩?”我有些...
    開封第一講書人閱讀 156,531評論 0 345
  • 文/不壞的土叔 我叫張陵,是天一觀的道長栓拜。 經(jīng)常有香客問我座泳,道長,這世上最難降的妖魔是什么菱属? 我笑而不...
    開封第一講書人閱讀 56,309評論 1 282
  • 正文 為了忘掉前任,我火速辦了婚禮舰罚,結(jié)果婚禮上纽门,老公的妹妹穿的比我還像新娘。我一直安慰自己营罢,他們只是感情好赏陵,可當我...
    茶點故事閱讀 65,381評論 5 384
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著饲漾,像睡著了一般蝙搔。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上考传,一...
    開封第一講書人閱讀 49,730評論 1 289
  • 那天吃型,我揣著相機與錄音,去河邊找鬼僚楞。 笑死勤晚,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的泉褐。 我是一名探鬼主播赐写,決...
    沈念sama閱讀 38,882評論 3 404
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼膜赃!你這毒婦竟也來了挺邀?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,643評論 0 266
  • 序言:老撾萬榮一對情侶失蹤跳座,失蹤者是張志新(化名)和其女友劉穎端铛,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體疲眷,經(jīng)...
    沈念sama閱讀 44,095評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡沦补,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,448評論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了咪橙。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片夕膀。...
    茶點故事閱讀 38,566評論 1 339
  • 序言:一個原本活蹦亂跳的男人離奇死亡虚倒,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出产舞,到底是詐尸還是另有隱情魂奥,我是刑警寧澤,帶...
    沈念sama閱讀 34,253評論 4 328
  • 正文 年R本政府宣布易猫,位于F島的核電站耻煤,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏准颓。R本人自食惡果不足惜哈蝇,卻給世界環(huán)境...
    茶點故事閱讀 39,829評論 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望攘已。 院中可真熱鬧炮赦,春花似錦、人聲如沸样勃。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,715評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽峡眶。三九已至剧防,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間辫樱,已是汗流浹背峭拘。 一陣腳步聲響...
    開封第一講書人閱讀 31,945評論 1 264
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留狮暑,地道東北人棚唆。 一個月前我還...
    沈念sama閱讀 46,248評論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像心例,于是被迫代替她去往敵國和親宵凌。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 43,440評論 2 348

推薦閱讀更多精彩內(nèi)容