第四章嵌入式Linux開發(fā)環(huán)境的搭建課件_第1頁(yè)
第四章嵌入式Linux開發(fā)環(huán)境的搭建課件_第2頁(yè)
第四章嵌入式Linux開發(fā)環(huán)境的搭建課件_第3頁(yè)
第四章嵌入式Linux開發(fā)環(huán)境的搭建課件_第4頁(yè)
第四章嵌入式Linux開發(fā)環(huán)境的搭建課件_第5頁(yè)
已閱讀5頁(yè),還剩129頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

第四章嵌入式Linux開發(fā)環(huán)境的搭建2022/12/23第四章嵌入式Linux開發(fā)環(huán)境的搭建第四章嵌入式Linux開發(fā)環(huán)境的搭建2022/12/18第四1本章目標(biāo)了解主機(jī)系統(tǒng)引導(dǎo)、登錄及退出Linux掌握配置Linux下的minicom和windows下的超級(jí)終端掌握嵌入式交叉編譯環(huán)境的搭建掌握配置NFS服務(wù)掌握主機(jī)、目標(biāo)板的通信配置第四章嵌入式Linux開發(fā)環(huán)境的搭建本章目標(biāo)了解主機(jī)系統(tǒng)引導(dǎo)、登錄及退出Linux第四章嵌入式L2一、主機(jī)系統(tǒng)引導(dǎo)、登錄及退出Linux1系統(tǒng)引導(dǎo)

引導(dǎo)過程(bootprocess),也稱啟動(dòng)過程,指的是從主機(jī)(如PC機(jī))電源開關(guān)閉合或者在加電狀態(tài)按下RESET鍵以后,到內(nèi)核獲得控制權(quán)這一段時(shí)間。第四章嵌入式Linux開發(fā)環(huán)境的搭建一、主機(jī)系統(tǒng)引導(dǎo)、登錄及退出Linux1系統(tǒng)引導(dǎo)第四章嵌入3計(jì)算機(jī)內(nèi)部運(yùn)行過程,主要包括:

⑴①PC機(jī)內(nèi)部有一片ROM存儲(chǔ)區(qū),存儲(chǔ)了BIOS(BasicInputOutputSystem,基本輸入輸出系統(tǒng)),加電或RESET后,CPU把第一條可執(zhí)行指令的物理地址設(shè)置為0xFFFF0,即指向BIOS的入口地址;②CPU執(zhí)行BIOS中的程序,對(duì)底層硬件、接口和設(shè)備進(jìn)行測(cè)試及初始化,例如對(duì)中斷控制器、DMA控制器、串行端口等等進(jìn)行測(cè)試和初始化;③運(yùn)行的BIOS中的程序,從指定的引導(dǎo)盤上將一個(gè)引導(dǎo)扇區(qū)的內(nèi)容裝入內(nèi)存。第四章嵌入式Linux開發(fā)環(huán)境的搭建計(jì)算機(jī)內(nèi)部運(yùn)行過程,主要包括:第四章嵌入式Linux開發(fā)環(huán)境4

⑵BIOS將程序執(zhí)行權(quán)移交給剛剛從引導(dǎo)扇區(qū)裝入內(nèi)存的這段程序,由這段程序,將硬盤上的Linux內(nèi)核代碼壓縮包裝入內(nèi)存。⑶為了節(jié)省存儲(chǔ)空間,通常Linux內(nèi)核代碼是經(jīng)過壓縮的,并且在壓縮包的頭部有一小段程序是未經(jīng)壓縮的可執(zhí)行代碼,這段程序的功能是對(duì)Linux壓縮包中的內(nèi)核代碼解壓縮。⑷程序執(zhí)行權(quán)移交給解壓縮代碼,由它解壓縮并分配內(nèi)存空間、填充解壓縮后的代碼。解壓縮完成后,執(zhí)行權(quán)轉(zhuǎn)移到內(nèi)核代碼入口處。系統(tǒng)引導(dǎo)是由兩部分程序共同配合完成的,BIOS將引導(dǎo)扇區(qū)內(nèi)容讀入內(nèi)存,由引導(dǎo)扇區(qū)讀入內(nèi)存的這段代碼再把內(nèi)核裝入內(nèi)存。內(nèi)核代碼開始執(zhí)行表示引導(dǎo)過程結(jié)束。內(nèi)核要進(jìn)行初始化,初始化任務(wù)依不同的硬件和不同的Linux版本而有所不同。第四章嵌入式Linux開發(fā)環(huán)境的搭建⑵BIOS將程序執(zhí)行權(quán)移交給剛剛從引導(dǎo)扇區(qū)裝入內(nèi)存的52登錄Linux

第四章嵌入式Linux開發(fā)環(huán)境的搭建2登錄Linux第四章嵌入式Linux開發(fā)環(huán)境的搭建63Linux的終端

Linux必須使用的終端設(shè)備(包括控制臺(tái)等),是借助于與主機(jī)連接的顯示器、鍵盤、鼠標(biāo)和終端仿真程序或終端應(yīng)用程序來實(shí)現(xiàn)的,一般把它們稱為虛擬終端或偽終端(pseudoterminal),簡(jiǎn)稱終端。在圖形桌面環(huán)境,鼠標(biāo)點(diǎn)擊“紅帽子”,選擇“終端”,就可以打開一個(gè)虛擬終端,打開虛擬終端的同時(shí),系統(tǒng)為使用該終端的用戶啟動(dòng)一種shell。第四章嵌入式Linux開發(fā)環(huán)境的搭建3Linux的終端Linux必須使用的終端設(shè)備(包括控制7圖2.3虛擬終端窗口(a)第四章嵌入式Linux開發(fā)環(huán)境的搭建圖2.3虛擬終端窗口(a)第四章嵌入式Linux開發(fā)環(huán)境8圖2.3虛擬終端窗口(b)第四章嵌入式Linux開發(fā)環(huán)境的搭建圖2.3虛擬終端窗口(b)第四章嵌入式Linux開發(fā)環(huán)境9一個(gè)root用戶打開的兩個(gè)虛擬終端窗口。用鼠標(biāo)點(diǎn)擊哪一個(gè)窗口,這個(gè)窗口對(duì)應(yīng)的虛擬終端就被激活。第四章嵌入式Linux開發(fā)環(huán)境的搭建一個(gè)root用戶打開的兩個(gè)虛擬終端窗口。用鼠標(biāo)點(diǎn)擊哪一個(gè)窗口10①可以用tty命令,查詢當(dāng)前激活窗口使用的是哪個(gè)終端:[root@localhost~]#tty/dev/pts/3上述顯示的pts是pseudoterminalslave的縮寫,意思為:從偽終端,是眾多偽終端類型中的一種;顯示的3表示第3個(gè)從偽終端。第四章嵌入式Linux開發(fā)環(huán)境的搭建①可以用tty命令,查詢當(dāng)前激活窗口使用的是哪個(gè)終端:第四章11字符界面命令提示符主提示符[登錄用戶@主機(jī)名工作目錄]輔助提示符root用戶(管理員)登陸后,該提示符為“#”其他普通用戶登陸后,該提示符為“$”12[root@localhost~]#

[teacher@localhost~]$

第四章嵌入式Linux開發(fā)環(huán)境的搭建字符界面命令提示符主提示符12[root@localhost12②用echo命令,可以查詢使用的終端類型:

[root@localhost~]#echo$TERMXterm上述顯示的Xterm,表示是一個(gè)基于X-WindowSystem的標(biāo)準(zhǔn)虛擬終端。③通過cat命令查詢主機(jī)上Linux支持哪些種類的終端:[root@localhost~]#cat/proc/tty/drivers④在/dev目錄下,用ls命令查詢串行端口能夠連接多少個(gè)終端:[root@localhostdev]#ls/dev/ttyS*-l第四章嵌入式Linux開發(fā)環(huán)境的搭建②用echo命令,可以查詢使用的終端類型:③通過cat134查看及修改用戶使用的shell用戶登錄后,打開一個(gè)終端時(shí),系統(tǒng)啟動(dòng)該用戶使用的shell,關(guān)閉這個(gè)終端時(shí),終止這個(gè)shell的運(yùn)行。①查看使用的shell[root@localhostdev]#ps-e②臨時(shí)改用另一種shell[root@localhost~]#tty/dev/pts/3[root@localhost~]#shsh-3.1#sh-3.1#ps–esh-3.1#exitexit第四章嵌入式Linux開發(fā)環(huán)境的搭建4查看及修改用戶使用的shell①查看使用的shell②臨14[root@localhost~]#tty/dev/pts/3[root@localhost~]#ps-e

③不同種類shell對(duì)應(yīng)的可執(zhí)行文件,一般都存儲(chǔ)在/bin目錄下,如果在命令行只輸入shell名,比如csh,卻不能啟動(dòng)csh,那么應(yīng)該在shell名前加上路徑名,例如/bin/csh。

也可以用以下命令,查找系統(tǒng)中已經(jīng)安裝了哪些shell:[root@localhost~]#cd/bin[root@localhostbin]#ls*shbashcshkshshtcshzsh第四章嵌入式Linux開發(fā)環(huán)境的搭建[root@localhost~]#tty③不同種類s155通過退出與shell的會(huì)話退出Linux

(1)在普通PC機(jī)或筆記本電腦上,可以使用exit命令退出shell,退出后系統(tǒng)關(guān)閉了該用戶登錄后已經(jīng)打開的窗口。(2)在GUI桌面環(huán)境下,也可以用鼠標(biāo)關(guān)閉窗口退出;或者單擊鼠標(biāo)右鍵,在隨后出現(xiàn)的菜單中,選擇關(guān)閉會(huì)話菜單條,退出第四章嵌入式Linux開發(fā)環(huán)境的搭建5通過退出與shell的會(huì)話退出Linux(1)在普通PC166關(guān)閉運(yùn)行的Linux系統(tǒng)

退出命令有shutdown、halt、poweroff、reboot等。shutdown最為常用,它使用系統(tǒng)提供的腳本,執(zhí)行正確的關(guān)閉步驟;halt一般會(huì)立即關(guān)閉系統(tǒng),不像shutdown命令退出時(shí)執(zhí)行那么多關(guān)閉步驟,這可能會(huì)引起文件系統(tǒng)同步的問題。poweroff通過切斷電源來關(guān)閉系統(tǒng);reboot將先退出然后重新啟動(dòng)系統(tǒng)。第四章嵌入式Linux開發(fā)環(huán)境的搭建6關(guān)閉運(yùn)行的Linux系統(tǒng)退出命令有shutdown、ha17關(guān)機(jī)及重啟命令重啟shutdown-rnowshutdown-r+15“警告:系統(tǒng)將于15分鐘后重啟”reboot關(guān)機(jī)shutdown-hnowhalthalt-p

18第四章嵌入式Linux開發(fā)環(huán)境的搭建關(guān)機(jī)及重啟命令重啟18第四章嵌入式Linux開發(fā)環(huán)境的搭建18使用VMWare虛擬機(jī),可以用鼠標(biāo)點(diǎn)擊桌面窗口右上角的關(guān)閉窗口圖標(biāo),關(guān)閉運(yùn)行的Linux,之后系統(tǒng)會(huì)提示Suspend(掛起)還是PowerOff(斷電)。通常可以選擇掛起,這樣在下一次從虛擬機(jī)中啟動(dòng)Linux時(shí),啟動(dòng)時(shí)間比較短。

第四章嵌入式Linux開發(fā)環(huán)境的搭建使用VMWare虛擬機(jī),可以用鼠標(biāo)點(diǎn)擊桌面窗口右上角的19

選擇掛起(suspend)后,終止了Linux運(yùn)行的同時(shí),也關(guān)閉了虛擬機(jī)窗口,結(jié)束了虛擬機(jī)運(yùn)行。下次要運(yùn)行Linux時(shí),需要雙擊Windows桌面虛擬機(jī)圖標(biāo),然后在虛擬機(jī)窗口選擇Resumethisvirtualmachine(恢復(fù)虛擬機(jī))。選擇斷電(poweroff)后,在虛擬機(jī)中模擬單獨(dú)運(yùn)行Linux時(shí)的斷電操作。下次要運(yùn)行Linux時(shí),雙擊Windows桌面虛擬機(jī)圖標(biāo),選擇poweron。第四章嵌入式Linux開發(fā)環(huán)境的搭建選擇掛起(suspend)后,終止了Linux運(yùn)行的同207使用幫助命令help和man(1)help命令

①輸入help命令后,終端上將顯示用戶現(xiàn)在使用的shell內(nèi)部定義的全部命令

②如果要查找某一條命令的具體含義,例如[root@localhost~]#helppwd[root@localhost~]#helpls第四章嵌入式Linux開發(fā)環(huán)境的搭建7使用幫助命令help和man[root@localhos21(2)用ls命令查找shell之外的命令除了shell內(nèi)部定義的那些命令之外,其余命令對(duì)應(yīng)的可執(zhí)行文件,一般都可以在子目錄/bin和/sbin中找到。可以使用命令ls/bin或者ls/sbin去查找,以下是2條命令及部分顯示輸出:[root@localhost~]#ls/bin[root@localhost~]#ls/sbin第四章嵌入式Linux開發(fā)環(huán)境的搭建(2)用ls命令查找shell之外的命令[root@loca22(3)man命令Linux帶有聯(lián)機(jī)幫助功能,它的幫助文件稱為聯(lián)機(jī)幫助頁(yè)(manpages),要想找某一個(gè)命令的詳細(xì)信息,比如ls命令,只要在命令行輸入man后跟隨空格及l(fā)s,然后回車就可以了。[root@localhost~]#manls第四章嵌入式Linux開發(fā)環(huán)境的搭建(3)man命令[root@localhost~]#ma23二、超級(jí)終端和Minicom配置及使用1、超級(jí)終端:(1)Windows下“開始”->”附件”->”通訊”->”超級(jí)終端”,在“名稱”處可隨意輸入該連接的名稱。第四章嵌入式Linux開發(fā)環(huán)境的搭建二、超級(jí)終端和Minicom配置及使用1、超級(jí)終端:第四章嵌24第四章嵌入式Linux開發(fā)環(huán)境的搭建第四章嵌入式Linux開發(fā)環(huán)境的搭建25(2)在“連接時(shí)使用”的方式改為“COM1”,即通過串口1

第四章嵌入式Linux開發(fā)環(huán)境的搭建(2)在“連接時(shí)使用”的方式改為“COM1”,即通過串口1

26(3)設(shè)置串口連接參數(shù)。每塊開發(fā)板的連接參數(shù)有可能會(huì)有差異,其中的具體數(shù)據(jù)在開發(fā)商提供的用戶手冊(cè)中有說明。比如:遠(yuǎn)峰的YF2410采用的波特率:115200,數(shù)據(jù)為8位,無奇偶校驗(yàn)位,停止位1,無硬件流;第四章嵌入式Linux開發(fā)環(huán)境的搭建(3)設(shè)置串口連接參數(shù)。每塊開發(fā)板的連接參數(shù)有可能會(huì)有差異,27第四章嵌入式Linux開發(fā)環(huán)境的搭建第四章嵌入式Linux開發(fā)環(huán)境的搭建28(4)基本配置完成,“單擊”確定,如果把開發(fā)板的串口線和PC機(jī)相連,在開發(fā)板上電后,就會(huì)顯示超級(jí)終端的信息。以后再使用超級(jí)終端時(shí),只要啟動(dòng)實(shí)例程序就可以了。通過:開始→所有程序→附件→通訊→超級(jí)終端→實(shí)例程序名,去啟動(dòng)。第四章嵌入式Linux開發(fā)環(huán)境的搭建(4)基本配置完成,“單擊”確定,如果把開發(fā)板的串口線和PC292主機(jī)Linux下的minicom仿真終端(1)minicom仿真終端設(shè)置

主機(jī)Linux環(huán)境最常用的一個(gè)仿真終端程序是minicom。在第一次使用minicom時(shí),也應(yīng)該進(jìn)行設(shè)置,再次使用就不需要設(shè)置了,設(shè)置過程如下:

①在Linux圖形桌面環(huán)境,打開一個(gè)終端,在終端窗口輸入minicom-s并回車,顯示的內(nèi)容如圖所示,選擇serialportsetup,回車。第四章嵌入式Linux開發(fā)環(huán)境的搭建2主機(jī)Linux下的minicom仿真終端第四章嵌入式Lin30minicom仿真終端設(shè)置窗口第四章嵌入式Linux開發(fā)環(huán)境的搭建minicom仿真終端設(shè)置窗口第四章嵌入式Linux開發(fā)環(huán)境31②然后按下A鍵,將對(duì)應(yīng)參數(shù)設(shè)置為/dev/ttyS0并回車;按下E鍵,按下I鍵,將對(duì)應(yīng)參數(shù)設(shè)置為1152008N1,回車;按下F鍵,將對(duì)應(yīng)參數(shù)設(shè)置為No;設(shè)置參數(shù)如圖所示,然后回車保存參數(shù),選擇savesetupasdf1。

③保存參數(shù)后,選擇Exit退出。④重啟終端,輸入minicom回車第四章嵌入式Linux開發(fā)環(huán)境的搭建②然后按下A鍵,將對(duì)應(yīng)參數(shù)設(shè)置為/dev/ttyS0并323、目標(biāo)板加電或RESET顯示信息舉例

⑴目標(biāo)板只加載bootloader主機(jī)運(yùn)行minicom程序后,目標(biāo)板加電或按下RESET鍵,目標(biāo)板首先運(yùn)行的裝載引導(dǎo)程序,在主機(jī)minicom窗口顯示如下信息,見圖2.14。第四章嵌入式Linux開發(fā)環(huán)境的搭建3、目標(biāo)板加電或RESET顯示信息舉例第四章嵌入式Linu33⑵目標(biāo)板由bootloader自動(dòng)引導(dǎo)Linux在目標(biāo)板加電或RESET后,如果主機(jī)鍵盤不按下任何鍵,目標(biāo)板的u-boot會(huì)自動(dòng)將Linux裝入內(nèi)存并運(yùn)行,在主機(jī)minicom終端顯示內(nèi)容如圖2.15所示。第四章嵌入式Linux開發(fā)環(huán)境的搭建⑵目標(biāo)板由bootloader自動(dòng)引導(dǎo)Linux第四344、在虛擬機(jī)中增添串口設(shè)備如果minicom程序設(shè)置參數(shù)后,目標(biāo)板加電或RESET后,該窗口不顯示目標(biāo)板啟動(dòng)信息,那么要檢查串口電纜連接是否正確、連接的端口是否正確、minicom程序參數(shù)設(shè)置是否正確。在使用minicom程序時(shí),要把Windows的超級(jí)終端程序關(guān)閉掉,不允許一個(gè)在前臺(tái)、另一個(gè)在后臺(tái)運(yùn)行。還有一種可能,就是虛擬機(jī)安裝后的默認(rèn)設(shè)置中不包含串口,當(dāng)用戶第一次安裝虛擬機(jī)和Linux后,要在虛擬機(jī)中添加串口設(shè)備。第四章嵌入式Linux開發(fā)環(huán)境的搭建4、在虛擬機(jī)中增添串口設(shè)備第四章嵌入式Linux開發(fā)環(huán)境的搭35添加串口的步驟如下:

(1)如果正在運(yùn)行虛擬機(jī)、Linux,這時(shí)要添加串口設(shè)備,則必須先用poweroff方式退出虛擬機(jī),而不能用suspend(掛起)方式退出,見圖2.17。用poweroff方式退出,其實(shí)并不是真正切斷了PC機(jī)的電源,只是模擬切斷電源退出的一種方式。第四章嵌入式Linux開發(fā)環(huán)境的搭建添加串口的步驟如下:用poweroff方式退出,其實(shí)并不36(2)然后再次啟動(dòng)虛擬機(jī),點(diǎn)擊“VM”,選擇“settings”,見圖2.18。第四章嵌入式Linux開發(fā)環(huán)境的搭建(2)然后再次啟動(dòng)虛擬機(jī),點(diǎn)擊“VM”,選擇“setting37(3)點(diǎn)擊Add按鈕。第四章嵌入式Linux開發(fā)環(huán)境的搭建(3)點(diǎn)擊Add按鈕。第四章嵌入式Linux開發(fā)環(huán)境的搭建38(4)選擇“SerialPort”點(diǎn)擊“Next”按鈕。第四章嵌入式Linux開發(fā)環(huán)境的搭建(4)選擇“SerialPort”點(diǎn)擊“Next”按鈕。第39(5)然后在出現(xiàn)的各個(gè)對(duì)話框中,依次點(diǎn)擊“Next”、“Finish”,則在虛擬機(jī)中添加了串行端口,如圖所示。第四章嵌入式Linux開發(fā)環(huán)境的搭建(5)然后在出現(xiàn)的各個(gè)對(duì)話框中,依次點(diǎn)擊“Next”、40(6)繼續(xù)啟動(dòng)虛擬機(jī),選擇“Poweronthisvirtualmachine”,直到啟動(dòng)Linux后,可以檢查minicom與主機(jī)串口通信是否正常。第四章嵌入式Linux開發(fā)環(huán)境的搭建(6)繼續(xù)啟動(dòng)虛擬機(jī),選擇“Poweronthis41三、嵌入式交叉編譯環(huán)境的搭建交叉編譯:就是在一個(gè)平臺(tái)上生成可以在另一個(gè)平臺(tái)上執(zhí)行的代碼。編譯最主要的工作就是將程序轉(zhuǎn)化成運(yùn)行該程序的cpu所能識(shí)別的機(jī)器代碼。交叉編譯器完整的安裝一般涉及到多個(gè)軟件的安裝,包括binutils、gcc、glibc等軟件;下載地址:/pub/第四章嵌入式Linux開發(fā)環(huán)境的搭建三、嵌入式交叉編譯環(huán)境的搭建交叉編譯:就是在一個(gè)平臺(tái)上生成可42編譯器的安裝舉例⒈將交叉編譯器拷貝到/usr/local子目錄啟動(dòng)虛擬機(jī)、運(yùn)行Linux后,查找并選擇交叉編譯器arm-2007q3-51-arm-none-linux-gnueabi-i686.tar.bz,選擇復(fù)制菜單條,如圖3.1所示。第四章嵌入式Linux開發(fā)環(huán)境的搭建編譯器的安裝舉例第四章嵌入式Linux開發(fā)環(huán)境的搭建43然后在Linux圖形桌面環(huán)境,在/usr/local子目錄,點(diǎn)擊鼠標(biāo)右鍵,選擇“粘貼1個(gè)URL”,交叉編譯器將會(huì)粘貼到該子目錄,如圖3.2所示。第四章嵌入式Linux開發(fā)環(huán)境的搭建然后在Linux圖形桌面環(huán)境,在/usr/local子目錄,44⒊建立/usr/local/arm子目錄并解壓縮交叉編譯器在Linux終端窗口輸入如下命令,將建立/usr/local/arm子目錄,然后將交叉編譯器解壓縮到該子目錄下。要求啟動(dòng)Linux時(shí),以root用戶名登錄。[root@localhostlocal]#mkdir/usr/local/arm[root@localhostlocal]#tarxvjfarm-2007q3-51-arm-none-linux-gnueabi-i686.tar.bz-C/usr/local/arm第四章嵌入式Linux開發(fā)環(huán)境的搭建⒊建立/usr/local/arm子目錄并解壓縮交叉編譯器45解壓縮后的代碼分6個(gè)子目錄保存,可以用如下命令查看。[root@localhostlocal]#cd/usr/local/arm[root@localhostarm]#ls-l總計(jì)8drwxr-xr-x8rootroot409612-2510:30arm-2007q3[root@localhostarm]#[root@localhostarm]#cdarm-2007q3[root@localhostarm-2007q3]#ls-l總計(jì)48第四章嵌入式Linux開發(fā)環(huán)境的搭建解壓縮后的代碼分6個(gè)子目錄保存,可以用如下命令查看。第四章嵌46drwxrwxr-x6rootroot40962007-09-28arm-none-linux-gnueabidrwxr-xr-x2rootroot40962007-09-28bindrwxrwxr-x2rootroot40962007-09-28includedrwxrwxr-x3rootroot40962007-09-28libdrwxrwxr-x4rootroot40962007-09-28libexecdrwxrwxr-x3rootroot40962007-09-28share第四章嵌入式Linux開發(fā)環(huán)境的搭建drwxrwxr-x6rootroot409620474對(duì)查找工具鏈的路徑變量進(jìn)行修改安裝了交叉編譯器后,需要修改/root/.bashrc文件內(nèi)容,應(yīng)該在這個(gè)文件中增加一行語(yǔ)句,指出交叉編譯器所在的路徑。之后每當(dāng)打開終端窗口時(shí),Linux自動(dòng)運(yùn)行/root/.bashrc文件,給出缺省路徑名的交叉編譯器的查找路徑。第四章嵌入式Linux開發(fā)環(huán)境的搭建4對(duì)查找工具鏈的路徑變量進(jìn)行修改第四章嵌入式Linux開發(fā)48(1)在/root/.bashrc文件中增加語(yǔ)句可以用如下命令檢查原來的路徑變量值:[root@localhostlocal]#echo$PATH

/usr/lib/qt-3.3/bin:/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin:/root/bin然后用vi增加一行語(yǔ)句:[root@localhostlocal]#vi/root/.bashrcexportPATH=/usr/local/arm/arm2007q3/bin:$PATH第四章嵌入式Linux開發(fā)環(huán)境的搭建(1)在/root/.bashrc文件中增加語(yǔ)句然后用vi增49(2)重啟/root/.bashrc文件可以使用source命令重啟/root/.bashrc文件,然后系統(tǒng)才能修改查找路徑:[root@localhost~]#source/root/.bashrc如果不使用source命令重啟文件,也可以用exit命令關(guān)閉終端窗口,然后再次打開終端窗口,打開終端窗口過程中系統(tǒng)會(huì)自動(dòng)啟動(dòng)/root/.bashrc文件。第四章嵌入式Linux開發(fā)環(huán)境的搭建(2)重啟/root/.bashrc文件第四章嵌入式Linu50(3)檢查新的路徑變量值用echo命令可以檢查新的路徑變量值:[root@localhost~]#echo$PATH

/usr/local/arm/arm-2007q3/bin:/usr/lib/qt-3.3/bin:/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin:/root/bin第四章嵌入式Linux開發(fā)環(huán)境的搭建(3)檢查新的路徑變量值第四章嵌入式Linux開發(fā)環(huán)境的搭建51四主機(jī)Linux環(huán)境網(wǎng)絡(luò)配置1主機(jī)Linux環(huán)境IP地址設(shè)置(1)主機(jī)Linux環(huán)境IP地址設(shè)置簡(jiǎn)介主機(jī)Linux環(huán)境IP地址,應(yīng)該與目標(biāo)板Linux的IP地址4個(gè)分組中的前3組完全相同,只允許最后一組不同。例如,目標(biāo)板Linux的IP地址如果為,那么主機(jī)IP地址前3組必須設(shè)置為192.168.1,最后一組可以是1~253中的一個(gè)數(shù)字。第四章嵌入式Linux開發(fā)環(huán)境的搭建四主機(jī)Linux環(huán)境網(wǎng)絡(luò)配置1主機(jī)Linux環(huán)境IP地址52⒉主機(jī)Linux環(huán)境IP地址設(shè)置方法常用的方法有兩種:(1)一種是根據(jù)目標(biāo)板LinuxIP地址,設(shè)置主機(jī)LinuxIP地址。這種方法需要先查詢目標(biāo)板LinuxIP地址,如果目標(biāo)板還沒有設(shè)置過IP地址,應(yīng)該先進(jìn)行設(shè)置。(2)另一種是保留主機(jī)LinuxIP地址不變,根據(jù)這個(gè)地址設(shè)置目標(biāo)板的IP地址。第四章嵌入式Linux開發(fā)環(huán)境的搭建⒉主機(jī)Linux環(huán)境IP地址設(shè)置方法第四章嵌入式Linux53⒊目標(biāo)板IP地址配置、檢查(1)如果目標(biāo)板LinuxIP地址還沒有配置,那么在minicom窗口輸入ifconfig命令之后,沒有任何輸出信息:root@Techv_OMAP35xx:~#ifconfigroot@Techv_OMAP35xx:~#(2)對(duì)目標(biāo)板LinuxIP地址進(jìn)行配置,假定配置為,輸入命令和參數(shù),回車后顯示:root@Techv_OMAP35xx:~#ifconfigeth0root@Techv_OMAP35xx:~#ifconfig配置的目標(biāo)板LinuxIP地址,沒有保留在目標(biāo)板的外部存儲(chǔ)器。目標(biāo)板關(guān)機(jī)或RESET后丟失,下一次使用還需要重新配置。第四章嵌入式Linux開發(fā)環(huán)境的搭建⒊目標(biāo)板IP地址配置、檢查(2)對(duì)目標(biāo)板LinuxIP地54⒋主機(jī)LinuxIP地址配置、檢查在主機(jī)終端窗口,輸入ifconfigeth0,將IP地址配置為。[root@localhost~]#ifconfigeth0然后用ifconfig命令檢查配置的參數(shù):[root@localhost~]#ifconfig主機(jī)LinuxIP地址配置后的值,保存到外設(shè),主機(jī)Linux在虛擬機(jī)中用掛起方式退出、關(guān)機(jī)后,再次啟動(dòng)仍保留以前配置過的值,直到下一次配置新的地址為止。如果主機(jī)Linux在虛擬機(jī)中以poweroff方式退出,再次以poweron方式啟動(dòng)運(yùn)行Linux后,保存的IP地址丟失,需要重新配置。第四章嵌入式Linux開發(fā)環(huán)境的搭建⒋主機(jī)LinuxIP地址配置、檢查主機(jī)LinuxIP地55五、主機(jī)Linux環(huán)境網(wǎng)絡(luò)防火墻設(shè)置(1)在主機(jī)Linux終端窗口,輸入setup命令并回車,然后在彈出的菜單中選擇“防火墻配置(Firewallconfiguration)”見圖3.4,回車。第四章嵌入式Linux開發(fā)環(huán)境的搭建五、主機(jī)Linux環(huán)境網(wǎng)絡(luò)防火墻設(shè)置第四章嵌入式Linux開56(2)在彈出的界面中用光標(biāo)移動(dòng)鍵選擇“禁用”防火墻,選擇“確定”后回車,退出設(shè)置,見圖3.5。第四章嵌入式Linux開發(fā)環(huán)境的搭建(2)在彈出的界面中用光標(biāo)移動(dòng)鍵選擇“禁用”防火墻,選擇“確57(2)另一種設(shè)置方法是:在主機(jī)Linux圖形桌面,點(diǎn)擊“紅帽子”→“安全級(jí)別和防火墻”,在彈出的窗口選擇禁用防火墻,如圖3.6所示。第四章嵌入式Linux開發(fā)環(huán)境的搭建(2)另一種設(shè)置方法是:在主機(jī)Linux圖形桌面,點(diǎn)擊“紅帽58六、主機(jī)與目標(biāo)板網(wǎng)絡(luò)通信測(cè)試⒈在主機(jī)終端窗口用命令測(cè)試主機(jī)與目標(biāo)板的通信在主機(jī)Linux終端,輸入ping命令,后跟目標(biāo)板IP地址,例如:[root@localhost/]#ping可以用Ctrl+c鍵去終止ping命令。⒉在目標(biāo)板終端窗口用命令測(cè)試目標(biāo)板與主機(jī)的通信在目標(biāo)板終端窗口(輸入minicom后的窗口),輸入ping命令,后面跟隨主機(jī)IP地址,例如:root@Techv_OMAP35xx:~#ping第四章嵌入式Linux開發(fā)環(huán)境的搭建六、主機(jī)與目標(biāo)板網(wǎng)絡(luò)通信測(cè)試⒉在目標(biāo)板終端窗口用命令測(cè)試目59⒊ping命令測(cè)試提示的錯(cuò)誤信息如果網(wǎng)絡(luò)不通,系統(tǒng)會(huì)產(chǎn)生Unreachable(不可到達(dá))提示信息,這時(shí)要檢查:網(wǎng)絡(luò)防火墻設(shè)置是否正確,因?yàn)榉阑饓Σ辉试SICMP流量通過;網(wǎng)口電纜與接口是否正確連接;ping命令中的IP地址是否為正確地址;測(cè)試命令和IP地址是否在正確的終端窗口輸入。第四章嵌入式Linux開發(fā)環(huán)境的搭建⒊ping命令測(cè)試提示的錯(cuò)誤信息第四章嵌入式Linux開發(fā)60七、主機(jī)Linux環(huán)境NFS設(shè)置⒈NFS簡(jiǎn)述NFS(NetworkFileSystem,網(wǎng)絡(luò)文件系統(tǒng))協(xié)議,允許在一組通過網(wǎng)絡(luò)互聯(lián)的計(jì)算機(jī)中,計(jì)算機(jī)A的某個(gè)存儲(chǔ)位置(導(dǎo)出),能夠被計(jì)算機(jī)B使用。NFS協(xié)議通過網(wǎng)口的連接,把主機(jī)導(dǎo)出目錄的文件,連接到目標(biāo)板的指定目錄,目標(biāo)板可以像使用本地文件一樣,使用這些文件。第四章嵌入式Linux開發(fā)環(huán)境的搭建七、主機(jī)Linux環(huán)境NFS設(shè)置第四章嵌入式Linux開發(fā)環(huán)61⒉主機(jī)NFS設(shè)置⑴選擇NFS服務(wù)一種設(shè)置方法是,選擇:紅帽子→服務(wù),在彈出的服務(wù)窗口用光標(biāo)選擇nfs服務(wù),見圖3.7。同時(shí)還要選擇去掉iptables服務(wù)。然后關(guān)閉該窗口。第四章嵌入式Linux開發(fā)環(huán)境的搭建⒉主機(jī)NFS設(shè)置第四章嵌入式Linux開發(fā)環(huán)境的搭建62另一種設(shè)置方法是,在主機(jī)終端窗口,輸入setup命令,在彈出的窗口中選擇“系統(tǒng)服務(wù)”并回車,然后用光標(biāo)鍵上、下移動(dòng),用空格鍵選中nfs服務(wù),見圖3.8,然后去掉iptables服務(wù),最后用F12鍵退出。第四章嵌入式Linux開發(fā)環(huán)境的搭建另一種設(shè)置方法是,在主機(jī)終端窗口,輸入setup命令,在彈出63⑵設(shè)置主機(jī)NFS導(dǎo)出目錄及讀寫權(quán)限除了要設(shè)置主機(jī)Linux允許NFS服務(wù)外,還要指定主機(jī)的哪些目錄作為NFS區(qū)域,即導(dǎo)出目錄,同時(shí)要指定該目錄允許的讀寫權(quán)限。設(shè)置方法是用vi編輯器打開/etc/exports文件:[root@localhost~]#vi/etc/exports將其內(nèi)容修改為:/ *(rw)/home/nfs1*(rw)然后保存、退出。第四章嵌入式Linux開發(fā)環(huán)境的搭建⑵設(shè)置主機(jī)NFS導(dǎo)出目錄及讀寫權(quán)限[root@loc64⒊啟動(dòng)NFS設(shè)置通過以下命令,按新的設(shè)置重啟NFS:[root@localhost~]#/etc/init.d/nfsrestart⒋查看NFS配置文件可以用vi查看/etc/exports文件:[root@localhost~]#vi/etc/exports/*(rw)/home/nfs1*(rw)第四章嵌入式Linux開發(fā)環(huán)境的搭建⒊啟動(dòng)NFS設(shè)置⒋查看NFS配置文件第四章嵌入式Linu65⒌將主機(jī)/home/nfs1目錄掛接為目標(biāo)板/tmp目錄此處所謂掛接指的是,在目標(biāo)板對(duì)應(yīng)的終端窗口,使用mount命令,執(zhí)行NFS協(xié)議的掛接。⑴掛接前主機(jī)建立/home/nfs1子目錄[root@localhost/]#mkdir/home/nfs1(2)然后進(jìn)入/home/nfs1子目錄,用vi建立一個(gè)文件,文件名為abc,文件內(nèi)容可以隨意輸入并保存。建立這個(gè)文件目的是在掛接后能夠從目標(biāo)板看到主機(jī)/home/nfs1下的這個(gè)文件。[root@localhost/]#cd/home/nfs1[root@localhostnfs1]#viabc[root@localhostnfs1]#ls-l第四章嵌入式Linux開發(fā)環(huán)境的搭建⒌將主機(jī)/home/nfs1目錄掛接為目標(biāo)板/tmp目錄(66演講完畢,謝謝聽講!再見,seeyouagain3rew2022/12/23第四章嵌入式Linux開發(fā)環(huán)境的搭建演講完畢,謝謝聽講!再見,seeyouagain3rew67第四章嵌入式Linux開發(fā)環(huán)境的搭建2022/12/23第四章嵌入式Linux開發(fā)環(huán)境的搭建第四章嵌入式Linux開發(fā)環(huán)境的搭建2022/12/18第四68本章目標(biāo)了解主機(jī)系統(tǒng)引導(dǎo)、登錄及退出Linux掌握配置Linux下的minicom和windows下的超級(jí)終端掌握嵌入式交叉編譯環(huán)境的搭建掌握配置NFS服務(wù)掌握主機(jī)、目標(biāo)板的通信配置第四章嵌入式Linux開發(fā)環(huán)境的搭建本章目標(biāo)了解主機(jī)系統(tǒng)引導(dǎo)、登錄及退出Linux第四章嵌入式L69一、主機(jī)系統(tǒng)引導(dǎo)、登錄及退出Linux1系統(tǒng)引導(dǎo)

引導(dǎo)過程(bootprocess),也稱啟動(dòng)過程,指的是從主機(jī)(如PC機(jī))電源開關(guān)閉合或者在加電狀態(tài)按下RESET鍵以后,到內(nèi)核獲得控制權(quán)這一段時(shí)間。第四章嵌入式Linux開發(fā)環(huán)境的搭建一、主機(jī)系統(tǒng)引導(dǎo)、登錄及退出Linux1系統(tǒng)引導(dǎo)第四章嵌入70計(jì)算機(jī)內(nèi)部運(yùn)行過程,主要包括:

⑴①PC機(jī)內(nèi)部有一片ROM存儲(chǔ)區(qū),存儲(chǔ)了BIOS(BasicInputOutputSystem,基本輸入輸出系統(tǒng)),加電或RESET后,CPU把第一條可執(zhí)行指令的物理地址設(shè)置為0xFFFF0,即指向BIOS的入口地址;②CPU執(zhí)行BIOS中的程序,對(duì)底層硬件、接口和設(shè)備進(jìn)行測(cè)試及初始化,例如對(duì)中斷控制器、DMA控制器、串行端口等等進(jìn)行測(cè)試和初始化;③運(yùn)行的BIOS中的程序,從指定的引導(dǎo)盤上將一個(gè)引導(dǎo)扇區(qū)的內(nèi)容裝入內(nèi)存。第四章嵌入式Linux開發(fā)環(huán)境的搭建計(jì)算機(jī)內(nèi)部運(yùn)行過程,主要包括:第四章嵌入式Linux開發(fā)環(huán)境71

⑵BIOS將程序執(zhí)行權(quán)移交給剛剛從引導(dǎo)扇區(qū)裝入內(nèi)存的這段程序,由這段程序,將硬盤上的Linux內(nèi)核代碼壓縮包裝入內(nèi)存。⑶為了節(jié)省存儲(chǔ)空間,通常Linux內(nèi)核代碼是經(jīng)過壓縮的,并且在壓縮包的頭部有一小段程序是未經(jīng)壓縮的可執(zhí)行代碼,這段程序的功能是對(duì)Linux壓縮包中的內(nèi)核代碼解壓縮。⑷程序執(zhí)行權(quán)移交給解壓縮代碼,由它解壓縮并分配內(nèi)存空間、填充解壓縮后的代碼。解壓縮完成后,執(zhí)行權(quán)轉(zhuǎn)移到內(nèi)核代碼入口處。系統(tǒng)引導(dǎo)是由兩部分程序共同配合完成的,BIOS將引導(dǎo)扇區(qū)內(nèi)容讀入內(nèi)存,由引導(dǎo)扇區(qū)讀入內(nèi)存的這段代碼再把內(nèi)核裝入內(nèi)存。內(nèi)核代碼開始執(zhí)行表示引導(dǎo)過程結(jié)束。內(nèi)核要進(jìn)行初始化,初始化任務(wù)依不同的硬件和不同的Linux版本而有所不同。第四章嵌入式Linux開發(fā)環(huán)境的搭建⑵BIOS將程序執(zhí)行權(quán)移交給剛剛從引導(dǎo)扇區(qū)裝入內(nèi)存的722登錄Linux

第四章嵌入式Linux開發(fā)環(huán)境的搭建2登錄Linux第四章嵌入式Linux開發(fā)環(huán)境的搭建733Linux的終端

Linux必須使用的終端設(shè)備(包括控制臺(tái)等),是借助于與主機(jī)連接的顯示器、鍵盤、鼠標(biāo)和終端仿真程序或終端應(yīng)用程序來實(shí)現(xiàn)的,一般把它們稱為虛擬終端或偽終端(pseudoterminal),簡(jiǎn)稱終端。在圖形桌面環(huán)境,鼠標(biāo)點(diǎn)擊“紅帽子”,選擇“終端”,就可以打開一個(gè)虛擬終端,打開虛擬終端的同時(shí),系統(tǒng)為使用該終端的用戶啟動(dòng)一種shell。第四章嵌入式Linux開發(fā)環(huán)境的搭建3Linux的終端Linux必須使用的終端設(shè)備(包括控制74圖2.3虛擬終端窗口(a)第四章嵌入式Linux開發(fā)環(huán)境的搭建圖2.3虛擬終端窗口(a)第四章嵌入式Linux開發(fā)環(huán)境75圖2.3虛擬終端窗口(b)第四章嵌入式Linux開發(fā)環(huán)境的搭建圖2.3虛擬終端窗口(b)第四章嵌入式Linux開發(fā)環(huán)境76一個(gè)root用戶打開的兩個(gè)虛擬終端窗口。用鼠標(biāo)點(diǎn)擊哪一個(gè)窗口,這個(gè)窗口對(duì)應(yīng)的虛擬終端就被激活。第四章嵌入式Linux開發(fā)環(huán)境的搭建一個(gè)root用戶打開的兩個(gè)虛擬終端窗口。用鼠標(biāo)點(diǎn)擊哪一個(gè)窗口77①可以用tty命令,查詢當(dāng)前激活窗口使用的是哪個(gè)終端:[root@localhost~]#tty/dev/pts/3上述顯示的pts是pseudoterminalslave的縮寫,意思為:從偽終端,是眾多偽終端類型中的一種;顯示的3表示第3個(gè)從偽終端。第四章嵌入式Linux開發(fā)環(huán)境的搭建①可以用tty命令,查詢當(dāng)前激活窗口使用的是哪個(gè)終端:第四章78字符界面命令提示符主提示符[登錄用戶@主機(jī)名工作目錄]輔助提示符root用戶(管理員)登陸后,該提示符為“#”其他普通用戶登陸后,該提示符為“$”79[root@localhost~]#

[teacher@localhost~]$

第四章嵌入式Linux開發(fā)環(huán)境的搭建字符界面命令提示符主提示符12[root@localhost79②用echo命令,可以查詢使用的終端類型:

[root@localhost~]#echo$TERMXterm上述顯示的Xterm,表示是一個(gè)基于X-WindowSystem的標(biāo)準(zhǔn)虛擬終端。③通過cat命令查詢主機(jī)上Linux支持哪些種類的終端:[root@localhost~]#cat/proc/tty/drivers④在/dev目錄下,用ls命令查詢串行端口能夠連接多少個(gè)終端:[root@localhostdev]#ls/dev/ttyS*-l第四章嵌入式Linux開發(fā)環(huán)境的搭建②用echo命令,可以查詢使用的終端類型:③通過cat804查看及修改用戶使用的shell用戶登錄后,打開一個(gè)終端時(shí),系統(tǒng)啟動(dòng)該用戶使用的shell,關(guān)閉這個(gè)終端時(shí),終止這個(gè)shell的運(yùn)行。①查看使用的shell[root@localhostdev]#ps-e②臨時(shí)改用另一種shell[root@localhost~]#tty/dev/pts/3[root@localhost~]#shsh-3.1#sh-3.1#ps–esh-3.1#exitexit第四章嵌入式Linux開發(fā)環(huán)境的搭建4查看及修改用戶使用的shell①查看使用的shell②臨81[root@localhost~]#tty/dev/pts/3[root@localhost~]#ps-e

③不同種類shell對(duì)應(yīng)的可執(zhí)行文件,一般都存儲(chǔ)在/bin目錄下,如果在命令行只輸入shell名,比如csh,卻不能啟動(dòng)csh,那么應(yīng)該在shell名前加上路徑名,例如/bin/csh。

也可以用以下命令,查找系統(tǒng)中已經(jīng)安裝了哪些shell:[root@localhost~]#cd/bin[root@localhostbin]#ls*shbashcshkshshtcshzsh第四章嵌入式Linux開發(fā)環(huán)境的搭建[root@localhost~]#tty③不同種類s825通過退出與shell的會(huì)話退出Linux

(1)在普通PC機(jī)或筆記本電腦上,可以使用exit命令退出shell,退出后系統(tǒng)關(guān)閉了該用戶登錄后已經(jīng)打開的窗口。(2)在GUI桌面環(huán)境下,也可以用鼠標(biāo)關(guān)閉窗口退出;或者單擊鼠標(biāo)右鍵,在隨后出現(xiàn)的菜單中,選擇關(guān)閉會(huì)話菜單條,退出第四章嵌入式Linux開發(fā)環(huán)境的搭建5通過退出與shell的會(huì)話退出Linux(1)在普通PC836關(guān)閉運(yùn)行的Linux系統(tǒng)

退出命令有shutdown、halt、poweroff、reboot等。shutdown最為常用,它使用系統(tǒng)提供的腳本,執(zhí)行正確的關(guān)閉步驟;halt一般會(huì)立即關(guān)閉系統(tǒng),不像shutdown命令退出時(shí)執(zhí)行那么多關(guān)閉步驟,這可能會(huì)引起文件系統(tǒng)同步的問題。poweroff通過切斷電源來關(guān)閉系統(tǒng);reboot將先退出然后重新啟動(dòng)系統(tǒng)。第四章嵌入式Linux開發(fā)環(huán)境的搭建6關(guān)閉運(yùn)行的Linux系統(tǒng)退出命令有shutdown、ha84關(guān)機(jī)及重啟命令重啟shutdown-rnowshutdown-r+15“警告:系統(tǒng)將于15分鐘后重啟”reboot關(guān)機(jī)shutdown-hnowhalthalt-p

85第四章嵌入式Linux開發(fā)環(huán)境的搭建關(guān)機(jī)及重啟命令重啟18第四章嵌入式Linux開發(fā)環(huán)境的搭建85使用VMWare虛擬機(jī),可以用鼠標(biāo)點(diǎn)擊桌面窗口右上角的關(guān)閉窗口圖標(biāo),關(guān)閉運(yùn)行的Linux,之后系統(tǒng)會(huì)提示Suspend(掛起)還是PowerOff(斷電)。通??梢赃x擇掛起,這樣在下一次從虛擬機(jī)中啟動(dòng)Linux時(shí),啟動(dòng)時(shí)間比較短。

第四章嵌入式Linux開發(fā)環(huán)境的搭建使用VMWare虛擬機(jī),可以用鼠標(biāo)點(diǎn)擊桌面窗口右上角的86

選擇掛起(suspend)后,終止了Linux運(yùn)行的同時(shí),也關(guān)閉了虛擬機(jī)窗口,結(jié)束了虛擬機(jī)運(yùn)行。下次要運(yùn)行Linux時(shí),需要雙擊Windows桌面虛擬機(jī)圖標(biāo),然后在虛擬機(jī)窗口選擇Resumethisvirtualmachine(恢復(fù)虛擬機(jī))。選擇斷電(poweroff)后,在虛擬機(jī)中模擬單獨(dú)運(yùn)行Linux時(shí)的斷電操作。下次要運(yùn)行Linux時(shí),雙擊Windows桌面虛擬機(jī)圖標(biāo),選擇poweron。第四章嵌入式Linux開發(fā)環(huán)境的搭建選擇掛起(suspend)后,終止了Linux運(yùn)行的同877使用幫助命令help和man(1)help命令

①輸入help命令后,終端上將顯示用戶現(xiàn)在使用的shell內(nèi)部定義的全部命令

②如果要查找某一條命令的具體含義,例如[root@localhost~]#helppwd[root@localhost~]#helpls第四章嵌入式Linux開發(fā)環(huán)境的搭建7使用幫助命令help和man[root@localhos88(2)用ls命令查找shell之外的命令除了shell內(nèi)部定義的那些命令之外,其余命令對(duì)應(yīng)的可執(zhí)行文件,一般都可以在子目錄/bin和/sbin中找到??梢允褂妹頻s/bin或者ls/sbin去查找,以下是2條命令及部分顯示輸出:[root@localhost~]#ls/bin[root@localhost~]#ls/sbin第四章嵌入式Linux開發(fā)環(huán)境的搭建(2)用ls命令查找shell之外的命令[root@loca89(3)man命令Linux帶有聯(lián)機(jī)幫助功能,它的幫助文件稱為聯(lián)機(jī)幫助頁(yè)(manpages),要想找某一個(gè)命令的詳細(xì)信息,比如ls命令,只要在命令行輸入man后跟隨空格及l(fā)s,然后回車就可以了。[root@localhost~]#manls第四章嵌入式Linux開發(fā)環(huán)境的搭建(3)man命令[root@localhost~]#ma90二、超級(jí)終端和Minicom配置及使用1、超級(jí)終端:(1)Windows下“開始”->”附件”->”通訊”->”超級(jí)終端”,在“名稱”處可隨意輸入該連接的名稱。第四章嵌入式Linux開發(fā)環(huán)境的搭建二、超級(jí)終端和Minicom配置及使用1、超級(jí)終端:第四章嵌91第四章嵌入式Linux開發(fā)環(huán)境的搭建第四章嵌入式Linux開發(fā)環(huán)境的搭建92(2)在“連接時(shí)使用”的方式改為“COM1”,即通過串口1

第四章嵌入式Linux開發(fā)環(huán)境的搭建(2)在“連接時(shí)使用”的方式改為“COM1”,即通過串口1

93(3)設(shè)置串口連接參數(shù)。每塊開發(fā)板的連接參數(shù)有可能會(huì)有差異,其中的具體數(shù)據(jù)在開發(fā)商提供的用戶手冊(cè)中有說明。比如:遠(yuǎn)峰的YF2410采用的波特率:115200,數(shù)據(jù)為8位,無奇偶校驗(yàn)位,停止位1,無硬件流;第四章嵌入式Linux開發(fā)環(huán)境的搭建(3)設(shè)置串口連接參數(shù)。每塊開發(fā)板的連接參數(shù)有可能會(huì)有差異,94第四章嵌入式Linux開發(fā)環(huán)境的搭建第四章嵌入式Linux開發(fā)環(huán)境的搭建95(4)基本配置完成,“單擊”確定,如果把開發(fā)板的串口線和PC機(jī)相連,在開發(fā)板上電后,就會(huì)顯示超級(jí)終端的信息。以后再使用超級(jí)終端時(shí),只要啟動(dòng)實(shí)例程序就可以了。通過:開始→所有程序→附件→通訊→超級(jí)終端→實(shí)例程序名,去啟動(dòng)。第四章嵌入式Linux開發(fā)環(huán)境的搭建(4)基本配置完成,“單擊”確定,如果把開發(fā)板的串口線和PC962主機(jī)Linux下的minicom仿真終端(1)minicom仿真終端設(shè)置

主機(jī)Linux環(huán)境最常用的一個(gè)仿真終端程序是minicom。在第一次使用minicom時(shí),也應(yīng)該進(jìn)行設(shè)置,再次使用就不需要設(shè)置了,設(shè)置過程如下:

①在Linux圖形桌面環(huán)境,打開一個(gè)終端,在終端窗口輸入minicom-s并回車,顯示的內(nèi)容如圖所示,選擇serialportsetup,回車。第四章嵌入式Linux開發(fā)環(huán)境的搭建2主機(jī)Linux下的minicom仿真終端第四章嵌入式Lin97minicom仿真終端設(shè)置窗口第四章嵌入式Linux開發(fā)環(huán)境的搭建minicom仿真終端設(shè)置窗口第四章嵌入式Linux開發(fā)環(huán)境98②然后按下A鍵,將對(duì)應(yīng)參數(shù)設(shè)置為/dev/ttyS0并回車;按下E鍵,按下I鍵,將對(duì)應(yīng)參數(shù)設(shè)置為1152008N1,回車;按下F鍵,將對(duì)應(yīng)參數(shù)設(shè)置為No;設(shè)置參數(shù)如圖所示,然后回車保存參數(shù),選擇savesetupasdf1。

③保存參數(shù)后,選擇Exit退出。④重啟終端,輸入minicom回車第四章嵌入式Linux開發(fā)環(huán)境的搭建②然后按下A鍵,將對(duì)應(yīng)參數(shù)設(shè)置為/dev/ttyS0并993、目標(biāo)板加電或RESET顯示信息舉例

⑴目標(biāo)板只加載bootloader主機(jī)運(yùn)行minicom程序后,目標(biāo)板加電或按下RESET鍵,目標(biāo)板首先運(yùn)行的裝載引導(dǎo)程序,在主機(jī)minicom窗口顯示如下信息,見圖2.14。第四章嵌入式Linux開發(fā)環(huán)境的搭建3、目標(biāo)板加電或RESET顯示信息舉例第四章嵌入式Linu100⑵目標(biāo)板由bootloader自動(dòng)引導(dǎo)Linux在目標(biāo)板加電或RESET后,如果主機(jī)鍵盤不按下任何鍵,目標(biāo)板的u-boot會(huì)自動(dòng)將Linux裝入內(nèi)存并運(yùn)行,在主機(jī)minicom終端顯示內(nèi)容如圖2.15所示。第四章嵌入式Linux開發(fā)環(huán)境的搭建⑵目標(biāo)板由bootloader自動(dòng)引導(dǎo)Linux第四1014、在虛擬機(jī)中增添串口設(shè)備如果minicom程序設(shè)置參數(shù)后,目標(biāo)板加電或RESET后,該窗口不顯示目標(biāo)板啟動(dòng)信息,那么要檢查串口電纜連接是否正確、連接的端口是否正確、minicom程序參數(shù)設(shè)置是否正確。在使用minicom程序時(shí),要把Windows的超級(jí)終端程序關(guān)閉掉,不允許一個(gè)在前臺(tái)、另一個(gè)在后臺(tái)運(yùn)行。還有一種可能,就是虛擬機(jī)安裝后的默認(rèn)設(shè)置中不包含串口,當(dāng)用戶第一次安裝虛擬機(jī)和Linux后,要在虛擬機(jī)中添加串口設(shè)備。第四章嵌入式Linux開發(fā)環(huán)境的搭建4、在虛擬機(jī)中增添串口設(shè)備第四章嵌入式Linux開發(fā)環(huán)境的搭102添加串口的步驟如下:

(1)如果正在運(yùn)行虛擬機(jī)、Linux,這時(shí)要添加串口設(shè)備,則必須先用poweroff方式退出虛擬機(jī),而不能用suspend(掛起)方式退出,見圖2.17。用poweroff方式退出,其實(shí)并不是真正切斷了PC機(jī)的電源,只是模擬切斷電源退出的一種方式。第四章嵌入式Linux開發(fā)環(huán)境的搭建添加串口的步驟如下:用poweroff方式退出,其實(shí)并不103(2)然后再次啟動(dòng)虛擬機(jī),點(diǎn)擊“VM”,選擇“settings”,見圖2.18。第四章嵌入式Linux開發(fā)環(huán)境的搭建(2)然后再次啟動(dòng)虛擬機(jī),點(diǎn)擊“VM”,選擇“setting104(3)點(diǎn)擊Add按鈕。第四章嵌入式Linux開發(fā)環(huán)境的搭建(3)點(diǎn)擊Add按鈕。第四章嵌入式Linux開發(fā)環(huán)境的搭建105(4)選擇“SerialPort”點(diǎn)擊“Next”按鈕。第四章嵌入式Linux開發(fā)環(huán)境的搭建(4)選擇“SerialPort”點(diǎn)擊“Next”按鈕。第106(5)然后在出現(xiàn)的各個(gè)對(duì)話框中,依次點(diǎn)擊“Next”、“Finish”,則在虛擬機(jī)中添加了串行端口,如圖所示。第四章嵌入式Linux開發(fā)環(huán)境的搭建(5)然后在出現(xiàn)的各個(gè)對(duì)話框中,依次點(diǎn)擊“Next”、107(6)繼續(xù)啟動(dòng)虛擬機(jī),選擇“Poweronthisvirtualmachine”,直到啟動(dòng)Linux后,可以檢查minicom與主機(jī)串口通信是否正常。第四章嵌入式Linux開發(fā)環(huán)境的搭建(6)繼續(xù)啟動(dòng)虛擬機(jī),選擇“Poweronthis108三、嵌入式交叉編譯環(huán)境的搭建交叉編譯:就是在一個(gè)平臺(tái)上生成可以在另一個(gè)平臺(tái)上執(zhí)行的代碼。編譯最主要的工作就是將程序轉(zhuǎn)化成運(yùn)行該程序的cpu所能識(shí)別的機(jī)器代碼。交叉編譯器完整的安裝一般涉及到多個(gè)軟件的安裝,包括binutils、gcc、glibc等軟件;下載地址:/pub/第四章嵌入式Linux開發(fā)環(huán)境的搭建三、嵌入式交叉編譯環(huán)境的搭建交叉編譯:就是在一個(gè)平臺(tái)上生成可109編譯器的安裝舉例⒈將交叉編譯器拷貝到/usr/local子目錄啟動(dòng)虛擬機(jī)、運(yùn)行Linux后,查找并選擇交叉編譯器arm-2007q3-51-arm-none-linux-gnueabi-i686.tar.bz,選擇復(fù)制菜單條,如圖3.1所示。第四章嵌入式Linux開發(fā)環(huán)境的搭建編譯器的安裝舉例第四章嵌入式Linux開發(fā)環(huán)境的搭建110然后在Linux圖形桌面環(huán)境,在/usr/local子目錄,點(diǎn)擊鼠標(biāo)右鍵,選擇“粘貼1個(gè)URL”,交叉編譯器將會(huì)粘貼到該子目錄,如圖3.2所示。第四章嵌入式Linux開發(fā)環(huán)境的搭建然后在Linux圖形桌面環(huán)境,在/usr/local子目錄,111⒊建立/usr/local/arm子目錄并解壓縮交叉編譯器在Linux終端窗口輸入如下命令,將建立/usr/local/arm子目錄,然后將交叉編譯器解壓縮到該子目錄下。要求啟動(dòng)Linux時(shí),以root用戶名登錄。[root@localhostlocal]#mkdir/usr/local/arm[root@localhostlocal]#tarxvjfarm-2007q3-51-arm-none-linux-gnueabi-i686.tar.bz-C/usr/local/arm第四章嵌入式Linux開發(fā)環(huán)境的搭建⒊建立/usr/local/arm子目錄并解壓縮交叉編譯器112解壓縮后的代碼分6個(gè)子目錄保存,可以用如下命令查看。[root@localhostlocal]#cd/usr/local/arm[root@localhostarm]#ls-l總計(jì)8drwxr-xr-x8rootroot409612-2510:30arm-2007q3[root@localhostarm]#[root@localhostarm]#cdarm-2007q3[root@localhostarm-2007q3]#ls-l總計(jì)48第四章嵌入式Linux開發(fā)環(huán)境的搭建解壓縮后的代碼分6個(gè)子目錄保存,可以用如下命令查看。第四章嵌113drwxrwxr-x6rootroot40962007-09-28arm-none-linux-gnueabidrwxr-xr-x2rootroot40962007-09-28bindrwxrwxr-x2rootroot40962007-09-28includedrwxrwxr-x3rootroot40962007-09-28libdrwxrwxr-x4rootroot40962007-09-28libexecdrwxrwxr-x3rootroot40962007-09-28share第四章嵌入式Linux開發(fā)環(huán)境的搭建drwxrwxr-x6rootroot4096201144對(duì)查找工具鏈的路徑變量進(jìn)行修改安裝了交叉編譯器后,需要修改/root/.bashrc文件內(nèi)容,應(yīng)該在這個(gè)文件中增加一行語(yǔ)句,指出交叉編譯器所在的路徑。之后每當(dāng)打開終端窗口時(shí),Linux自動(dòng)運(yùn)行/root/.bashrc文件,給出缺省路徑名的交叉編譯器的查找路徑。第四章嵌入式Linux開發(fā)環(huán)境的搭建4對(duì)查找工具鏈的路徑變量進(jìn)行修改第四章嵌入式Linux開發(fā)115(1)在/root/.bashrc文件中增加語(yǔ)句可以用如下命令檢查原來的路徑變量值:[root@localhostlocal]#echo$PATH

/usr/lib/qt-3.3/bin:/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin:/root/bin然后用vi增加一行語(yǔ)句:[root@localhostlocal]#vi/root/.bashrcexportPATH=/usr/local/arm/arm2007q3/bin:$PATH第四章嵌入式Linux開發(fā)環(huán)境的搭建(1)在/root/.bashrc文件中增加語(yǔ)句然后用vi增116(2)重啟/root/.bashrc文件可以使用source命令重啟/root/.bashrc文件,然后系統(tǒng)才能修改查找路徑:[root@localhost~]#source/root/.bashrc如果不使用source命令重啟文件,也可以用exit命令關(guān)閉終端窗口,然后再次打開終端窗口,打開終端窗口過程中系統(tǒng)會(huì)自動(dòng)啟動(dòng)/root/.bashrc文件。第四章嵌入式Linux開發(fā)環(huán)境的搭建(2)重啟/root/.bashrc文件第四章嵌入式Linu117(3)檢查新的路徑變量值用echo命令可以檢查新的路徑變量值:[root@localhost~]#echo$PATH

/usr/local/arm/arm-2007q3/bin:/usr/lib/qt-3.3/bin:/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin:/root/bin第四章嵌入式Linux開發(fā)環(huán)境的搭建(3)檢查新的路徑變量值第四章嵌入式Linux開發(fā)環(huán)境的搭建118四主機(jī)Linux環(huán)境網(wǎng)絡(luò)配置1主機(jī)Linux環(huán)境IP地址設(shè)置(1)主機(jī)Linux環(huán)境IP地址設(shè)置簡(jiǎn)介主機(jī)Linux環(huán)境IP地址,應(yīng)該與目標(biāo)板Linux的IP地址4個(gè)分組中的前3組完全相同,只允許最后一組不同。例如,目標(biāo)板Linux的IP地址如果為,那么主機(jī)IP地址前3組必須設(shè)置為192.168.1,最后一組可以是1~253中的一個(gè)數(shù)字。第四章嵌入式Linux開發(fā)環(huán)境的搭建四主機(jī)Linux環(huán)境網(wǎng)絡(luò)配置1主機(jī)Linux環(huán)境IP地址119⒉主機(jī)Linux環(huán)境IP地址設(shè)置方法常用的方法有兩種:(1)一種是根據(jù)目標(biāo)板LinuxIP地址,設(shè)置主機(jī)LinuxIP地址。這種方法需要先查詢目標(biāo)板LinuxIP地址,如果目標(biāo)板還沒有設(shè)置過IP地址,應(yīng)該先進(jìn)行設(shè)置。(2)另一種是保留主機(jī)LinuxIP地址不變,根據(jù)這個(gè)地址設(shè)置目標(biāo)板的IP地址。第四章嵌入式Linux開發(fā)環(huán)境的搭建⒉主機(jī)Linux環(huán)境IP地址設(shè)置方法第四章嵌入式Linux120⒊目標(biāo)板IP地址配置、檢查(1)如果目標(biāo)板LinuxIP地址還沒有配置,那么在minicom窗口輸入ifconfig命令之后,沒有任何輸出信息:root@Techv_OMAP35xx:~#ifconfigroot@Techv_OMAP35xx:~#(2)對(duì)目標(biāo)板LinuxIP地址進(jìn)行配置,假定配置為,輸入命令和參數(shù),回車后顯示:root@Techv_OMAP35xx:~#ifconfigeth0root@Techv_OMAP35xx:~#ifconfig配置的目標(biāo)板LinuxIP地址,沒有保留在目標(biāo)板的外部存儲(chǔ)器。目標(biāo)板關(guān)機(jī)或RESET后丟失,下一次使用還需要重新配置。第四章嵌入式Linux開發(fā)環(huán)境的搭建⒊目標(biāo)板IP地址配置、檢查(2)對(duì)目標(biāo)板LinuxIP地121⒋主機(jī)LinuxIP地址配置、檢查在主機(jī)終端窗口,輸入ifconfigeth0,將IP地址配置為。[root@localhost~]#ifconfigeth0然后用ifc

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論