前言:本文記錄了自己從一個(gè)完全不懂Linux的人如何一步步學(xué)會(huì)Linux程序開發(fā)的過程。當(dāng)然也希望本文能夠達(dá)到它的目的,讓那些和我一樣沒有任何基礎(chǔ)的人也能快速入門Linux程序開發(fā)。
一、Arm-Linux程序開發(fā)平臺(tái)簡(jiǎn)要介紹
Arm-Linux程序的開發(fā)并不像我們以前接觸的Windows程序開發(fā)那樣,關(guān)于平臺(tái)的搭建就繁瑣很多,所以在正式進(jìn)入程序開發(fā)之前先對(duì)這種開發(fā)模式進(jìn)行簡(jiǎn)要介紹,讓一個(gè)即使沒有任何Linux開發(fā)經(jīng)驗(yàn)的程序員也能夠看懂后面的內(nèi)容。
1.1程序開發(fā)所需系統(tǒng)及開發(fā)語言
開發(fā)arm-linux程序至少需要三種系統(tǒng):
    Windows系統(tǒng)。 
主要用來文件傳送和一些簡(jiǎn)單的文本文件編輯。這個(gè)系統(tǒng)其實(shí)并非必需,只是因?yàn)槟壳癙C機(jī)上最流行的系統(tǒng)仍然是Windows系統(tǒng),我們的很多關(guān)于PC的文件和數(shù)據(jù)的操作習(xí)慣都是在Windows系統(tǒng)上養(yǎng)成的,已經(jīng)對(duì)其形成了嚴(yán)重的依賴,所以Windows系統(tǒng)扮演著的“輔助開發(fā)系統(tǒng)”的角色。
    PC-Linux系統(tǒng)。 
在此系統(tǒng)上安裝arm-Linux交叉編譯器后,就可以對(duì)代碼文本文件進(jìn)行編譯,生成可在arm-Linux系統(tǒng)中運(yùn)行可執(zhí)行程序。此系統(tǒng)被稱為“Linux宿主機(jī)”,我們對(duì)Linux程序的開發(fā)工作(包括代碼編寫、調(diào)試和編譯生成可執(zhí)行文件)基本上就是在此系統(tǒng)上進(jìn)行的。
    Arm-Linux系統(tǒng)。 
Arm-Linux程序運(yùn)行的平臺(tái)。此系統(tǒng)的硬件載體是一塊小型的嵌入式arm板,我們?cè)贚inux宿主機(jī)上開發(fā)好程序并編譯生成arm-linux可執(zhí)行程序后,將可執(zhí)行程序文件傳送到嵌入式arm板中,然后就可以在arm板上直接運(yùn)行此程序了。
三種系統(tǒng)的職能和聯(lián)系如下圖:

  關(guān)于每個(gè)系統(tǒng)的職能及操作還有文件如何傳送交流都在后面詳細(xì)介紹。
關(guān)于開發(fā)語言,因?yàn)槟壳百徺I的Arm-Linux嵌入式板提供的編譯庫都是C/C++的,所以一般選擇C/C++進(jìn)行程序設(shè)計(jì)。
1.2系統(tǒng)平臺(tái)搭建方式
關(guān)于“三系統(tǒng)”的搭建方式,有兩種方法:三臺(tái)分立的單系統(tǒng)機(jī)器組合或者一臺(tái)雙系統(tǒng)PC機(jī)和一臺(tái)單系統(tǒng)Arm板機(jī)器。但是不管采用哪種組合方式,各種系統(tǒng)的職能都是一樣的,而且都是通過FTP、Telnet或者SSH等網(wǎng)絡(luò)協(xié)議進(jìn)行文件傳輸交流。
“三機(jī)器”組合模式。將三個(gè)系統(tǒng)分別安裝在三臺(tái)機(jī)器上并將三臺(tái)機(jī)器組建局域網(wǎng)。
“兩機(jī)器”組合模式。在PC機(jī)上利用虛擬工作站可以同時(shí)運(yùn)行兩個(gè)系統(tǒng),虛擬機(jī)上的Linux系統(tǒng)基本可以完成所有的實(shí)體PC-Linux機(jī)器的所有任務(wù),當(dāng)然也能夠組建局域網(wǎng)。
新聞熱點(diǎn)
疑難解答
網(wǎng)友關(guān)注