日本免费全黄少妇一区二区三区-高清无码一区二区三区四区-欧美中文字幕日韩在线观看-国产福利诱惑在线网站-国产中文字幕一区在线-亚洲欧美精品日韩一区-久久国产精品国产精品国产-国产精久久久久久一区二区三区-欧美亚洲国产精品久久久久

迷你拉布布4代,minilab

【迷你拉布布4代,minilab】怎樣自制Linux系統(tǒng)?

迷你拉布布4代,minilab


我們假設題主是想為特定的平臺定制一個特定的 Linux 系統(tǒng) 。這樣的工具有很多,可以參考這篇文章:http://tinylab.org/linux-lab-full-rootfs/介紹了七種制作 Linux 系統(tǒng)的工具:Linux 基金會為 Rootfs 制定了規(guī)范文檔:Linux FHS,社區(qū)可以基于它開發(fā)自己的實現(xiàn),下面是社區(qū)的一些候選制作方法:1. Busybox,BusyBox combines tiny versions of many common UNIX utilities into a single small executable.2. Buildroot,a simple, efficient and easy-to-use tool to generate embedded Linux systems through cross-compilation.3. Openembedded,the build framework for embedded Linux.4. Yocto,NOT AN EMBEDDED LINUX DISTRIBUTION, IT CREATES A CUSTOM ONE FOR YOU.5. LFS,a project that provides you with step-by-step instructions for building your own custom Linux system, entirely from source code.6. CLFS,a project that provides you with step-by-step instructions for cross building your own customized Linux system entirely from source.7. Distributions,top 10 most popular linux distributions comparedBusybox 小巧輕靈,本身提供了常見 Unix 工具集的 tiny 實現(xiàn),麻雀雖小,五臟俱全,進行微小的調(diào)整就可以制作一個隨 Linux 內(nèi)核啟動的符合 FHS 的文件系統(tǒng),特別適合入門嵌入式 Linux 開發(fā),不需要花很多時間,就可以了解 Linux 文件系統(tǒng)的組織結構和啟動引導過程 。
Buildroot,看名字主要是制作 Rootfs,集成了 Busybox,uclibc 等大量輕量級的工具、代碼庫,可以用熟悉的內(nèi)核配置工具來配置,用于制作面向嵌入式環(huán)境的根文件系統(tǒng),所以之前就用它來制作了 Linux Lab 的 mini rootfs 。它不僅提供了多種架構預先編譯的交叉編譯工具鏈,本身也可以用來制作交叉編譯工具,還可以用來編譯內(nèi)核、Qemu 等 。
為什么不用 Buildroot 來制作 full rootfs 呢?最重要的是,它沒有包管理,需要有一個基礎的下載和編譯過程,這個是有點費時間 。但是,如果需要制作比較小的嵌入式系統(tǒng),這個過程是值得的,首次編譯以后,后面就相對比較輕松 。Openembedded,提供了更靈活的配置功能,引入了“菜譜”這樣的概念,引入了專門的配置工具:Bitbake,也增加了可擴展性,但是復雜度和編譯時間大大增加 。
相比而言,Buildroot 隱藏了這些細節(jié) 。Yocto,相比 Openembedded 在配置性和可擴展性上更進一步,甚至通過引入 BSPs,支持真實的機器和開發(fā)板,也可以通過配置加入包管理工具,所以它有能力通過大量預制的“菜譜”制作一個完整的 Linux Distribution 。Yocto 和 Openembedded 之間共享 Bitbake 和 openembedded-core,它們是 Openembedded 的構建系統(tǒng),Yocto 基于此做了自己的構建工具:Poky 。
Yocto 和 Buildroot 的更完整比較請看:Buildroot v.s. Openembedded/Yocto Project 。LFS, Linux From Scratch,從名字就可以理解,它是從頭開始制作一個 Linux,manually, step-by-step,相比 Busybox,它包含了各種 normal-size 的包,本身還會制作工具鏈,制作代碼庫,Busybox 帶了 tiny-size 的代碼庫,但是沒有工具鏈 。
CLFS,Cross LFS,這里主要體現(xiàn)是交叉編譯,就是在一個架構上 step-by-step 完成另外一個架構的 LFS 過程 。Distributions,Linux 世界的發(fā)行版百花齊放,不同主題、不同桌面、不同領域、不同更新頻次、不同包管理工具讓人眼花繚亂,目前業(yè)界還在常用的有這么幾種:Ubuntu、Debian、Arch Linux、CentOS、Android 。
Ubuntu 現(xiàn)在被各大企業(yè)廣泛使用,每年 4 月和 10 月各發(fā)行一個版本;Debian 更新更慢,可能也更為穩(wěn)定;Arch Linux 的 package 滾動更新,比較快能拿到單個軟件的新版本;CentOS 基本是 Redhat 的社區(qū)版;Android 面向手機 。Distributions 的好處是有預編譯的工具鏈、工具以及 Qemu,還有各種代碼庫,比較適合聚焦應用開發(fā) 。

推薦閱讀