理查德·馬修·斯托曼博士
成都創(chuàng)新互聯(lián)堅持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:網(wǎng)站建設(shè)、網(wǎng)站設(shè)計、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時代的山丹網(wǎng)站設(shè)計、移動媒體設(shè)計的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!
理查德·馬修·斯托曼(Richard Matthew Stallman, RMS,生于1953年),自由軟件運動的精神領(lǐng)袖、GNU計劃以及自由軟件基金會(Free Software Foundation)的創(chuàng)立者、著名黑客。他的主要成就包括Emacs及后來的GNU Emacs,GNU C 編譯器及GNU 除錯器。 他所寫作的GNU通用公共許可證(GNUGPL)是世上最廣為采用的自由軟件許可證,為copyleft觀念開拓出一條嶄新的道路。他最大的影響是為自由軟件運動豎立了道德、政治以及法律框架。他被許多人譽為當(dāng)今自由軟件的斗士、偉大的理想主義者,但同時也有人批評他過于固執(zhí)、觀點落伍。
Make的概念:
Make這個詞,英語的意思是"制作"。Make命令直接用了這個意思,就是要做出某個文件。比如,要做出文件a.txt,就可以執(zhí)行下面的命令。
代碼如下:
$ make a.txt
但是,如果你真的輸入這條命令,它并不會起作用。因為Make命令本身并不知道,如何做出a.txt,需要有人告訴它,如何調(diào)用其他命令完成這個目標(biāo)。
比如,假設(shè)文件 a.txt 依賴于 b.txt 和 c.txt ,是后面兩個文件連接(cat命令)的產(chǎn)物。那么,make 需要知道下面的規(guī)則。
代碼如下:
a.txt: b.txt c.txt
cat b.txt c.txt a.txt
也就是說,make a.txt 這條命令的背后,實際上分成兩步:第一步,確認(rèn) b.txt 和 c.txt 必須已經(jīng)存在,第二步使用 cat 命令 將這個兩個文件合并,輸出為新文件。
像這樣的規(guī)則,都寫在一個叫做Makefile的文件中,Make命令依賴這個文件進(jìn)行構(gòu)建。Makefile文件也可以寫為makefile, 或者用命令行參數(shù)指定為其他文件名。
代碼如下:
$ make -f rules.txt
# 或者
$ make --file=rules.txt
上面代碼指定make命令依據(jù)rules.txt文件中的規(guī)則,進(jìn)行構(gòu)建。
總之,make只是一個根據(jù)指定的Shell命令進(jìn)行構(gòu)建的工具。它的規(guī)則很簡單,你規(guī)定要構(gòu)建哪個文件、它依賴哪些源文件,當(dāng)那些文件有變動時,如何重新構(gòu)建它。
make,就是編譯,大多數(shù)的源代碼包都經(jīng)過這一步進(jìn)行編譯(但有些perl或python編寫的軟件需要調(diào)用perl或python來進(jìn)行編譯)。如果 在 make 過程中出現(xiàn) error ,你就要記下錯誤代碼,然后你可以向開發(fā)者提交 bugreport(一般在 INSTALL 里有提交地址),或者你的系統(tǒng)少了一些依賴庫等,這些都要自己仔細(xì)研究錯誤代碼。
1、打開linux系統(tǒng),在linux的桌面的空白處右擊。
2、在彈出的下拉選項里,點擊打開終端。
3、在終端窗口使用su命令,然后按回車鍵。
4、將linux暫時設(shè)置為root用戶,點擊進(jìn)入開發(fā)者模式。
5、設(shè)置完后重啟Linux系統(tǒng)即可。
??通過運行 build 目錄下的 mk-uboot.sh 腳本,設(shè)定選項為 roc-rk3328-cc
??編譯完后輸出:
??各個鏡像文件的說明如下:
??也可以通過以下文件配置 UBOOT :
??kernel中需要配置,并定義設(shè)備樹,會涉及到以下文件:
??通過以下命令,完成內(nèi)核配置,并更新默認(rèn)配置:
??需要注意,在 make menuconfig 時應(yīng)進(jìn)行如下配置:
??配置好后即可編譯整個 kernel (腳本文件內(nèi)部設(shè)置了使用 -j4 來編譯):
??編譯完后輸出:
??創(chuàng)建一個大小為 20G 的根文件系統(tǒng)映像文件,將 ubuntu core 解壓到該映像中,如果不需要安裝過多的軟件,可以先設(shè)置成 2G ,后期再調(diào)整。
??將 qemu-aarch64-static 放到掛載的 rootfs 的 /usr/bin 中,能在 x86_64 主機(jī)系統(tǒng)下 chroot 到該 arm64 文件系統(tǒng)中運行:
??用 vim 編輯器打開 sources.list :
?? chroot 命令用來在指定的根目錄下運行指令,在使用 chroot 之后,系統(tǒng)的目錄結(jié)構(gòu)將以指定的位置作為 “/” 位置。
??在 rootfs 的 root 用戶下設(shè)置:
??退出,并卸載文件系統(tǒng):
??如果想要在創(chuàng)建的根文件系統(tǒng)中安裝軟件,也可以繼續(xù) chroot 到該文件系統(tǒng)中,安裝一些常用的軟件,比如 "pip" , "numpy" 等,避免復(fù)雜的交叉編譯環(huán)境設(shè)置和加快文件系統(tǒng)的成型。
??這樣 rootfs.img 里就已經(jīng)有剛才制作的根目錄內(nèi)容了,但這個 img 文件大小卻是定義的鏡像的大小,不是文件系統(tǒng)的實際大小,所以還要經(jīng)過一些處理才能發(fā)布。
??檢查并查看rootfs.img鏡像的大小:
??減小ubuntu.img鏡像文件的大?。?/p>
??把 Linux 根文件系統(tǒng)映像文件 rootfs 放在 out/ 下,這時 out 目錄應(yīng)包含以下文件:
??該腳本將根據(jù)《存儲映射》所描述的布局,將分區(qū)映像文件寫到指定位置,并最終打包成 out/system.img 。
??如下所示的"parameter.txt"就是按照存儲映射布局制作的,只添加了幾個必不可少的分區(qū)。
??插入 SD 卡,如果 SD 被自動掛載,則先將其卸載。
??安裝 pv :
??通過檢查內(nèi)核的日志查找 SD 卡的設(shè)備文件:
??如果設(shè)備文件為 /dev/sdb ,使用 dd 命令進(jìn)行燒錄:
??如果需要將分區(qū)鏡像寫入到 SD 卡,可以運行以下命令:
??也可以運行下面指令,將生成的統(tǒng)一固件 system.img 寫入到 SD 卡中:
文章題目:linux命令開發(fā)者 linux的開發(fā)模式
轉(zhuǎn)載來源:http://www.rwnh.cn/article44/doppshe.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供全網(wǎng)營銷推廣、企業(yè)建站、網(wǎng)站排名、定制開發(fā)、做網(wǎng)站、網(wǎng)站設(shè)計公司
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)