迅為龍芯2K1000開發板Linux工具之make工具和Makefile檔案
阿新 • • 發佈:2021-12-07
在編譯程式hello world的時候我們是直接使用gcc命令進行編譯的。我們編譯一個程式是非常的簡單的, 直接輸入 gcc 然後跟上程式的名稱再跟上指定生成程式的名稱, 就可以很輕鬆的編譯出可執行檔案。但是大家有沒有想過,如果要編譯一個工程,這個工程裡面有很多的原始檔, 這時候我們全部使用這個命令來編譯那就非常的麻煩了。為了解決編譯一個工程非常繁瑣這個問題,前輩們就給我們發明了編譯輔助工具 make工具。
作者直接在這個目錄下輸入 make,然後報錯了, 因為我沒有告訴 make 這個工具它按照什麼規則來編譯我們的程式。 如下圖所示。
make命令, 它就會呼叫make工具,make工具就會在當前目錄下找到makefile這個檔案, 這裡又報錯了, 因為作者這裡建立的makefile檔案, 他雖然找到了但是裡面是空的, 因為沒有包含任何的規則。 如下圖所示。
使用命令vi Makefile開啟Makefile檔案,在裡面寫入編譯規格來編譯helloworld.c檔案,我們寫入以下內容:
all:
(按tab按鍵縮排) gcc helloworld.c -o helloworld
儲存退出後輸入make , 可以發現在當前這個目錄下, 成功的生成了可執行檔案, 執行一下, 可以看到成功輸出了, 到這裡我們的編譯流程就已經講完了, 我們也成功的利用 makefile 檔案和 make 工具,如下圖所示。
弄清楚了什麼是make工具,怎麼來呼叫 make 工具, makefile 又是什麼之後。後面我們再學習 makefile 語法和編寫makefile 時,就非常的容易了。
迅為龍芯2k1000開發板:
核心板引數:
尺寸:65mm*55mm
CPU :龍芯2K1000雙核工業級處理器
主頻:800MHz-1GHz
記憶體:板載2GB DDR3 ,可選4GB
儲存:8MB的儲存,用來放BOOT載入程式的
工作電壓:12V和5V
系統支援:流暢執行vusybx、buiroot、Loognix、QT5.12系統。
引角擴充套件:引出腳多達232個,1.0間距的郵票孔方式,滿足使用者各類擴充套件需求
底板引數:
尺寸:190mm*125mm
POWER:電直流電源輸入介面
SWITCH:電源開關
Ethernet:2 路10M/100M/1000M自適應乙太網
USBHOST:4路USB2.0
OTG:支援
MiniHDMI:支援
RGB-LCD:支援
WIFI/BT:板載WIFI、藍芽二合一模組
Mini PCIE:可外接mini PCIE介面的4G模組,具備PCIE2.0單通道
4G模組 :支援(選配)
SIM Card:1個
UART:2路串列埠
RS485:1路
CAN:2路
蜂鳴器:一個有源蜂鳴器
RTC:支援
LIO/UART:2mm間距20PIN插座引出
GPIO :2mm間距20PIN插座引出
耳機介面:標準3.5mm耳機介面
JTAG:1路JTAG除錯介面(2mm間距10PIN插座引出)
GPS:一路GPS(選配)
固態硬碟介面:1路(SATA固態盤選配)
按鍵:3個
溫度感測器:支援
風扇驅動:支援
1 使用make工具
make 工具是編譯輔助工具, 用來解決使用命令編譯工程非常繁瑣的問題。 呼叫這個命令工具: 我們在 windows 上程式設計使用 ide , 我們有圖形介面, 有相應的按鈕, 比如說 build或者 run 來編譯。 其實 make 這個編譯輔助工具使用也是非常簡單的, 我們在控制檯上直接輸入命令make, 它就會自動呼叫 make 工具。2 Makefile檔案
Makefile 就是描述了整個工程編譯連線等規則的檔案。 我們在終端輸入完 make 命令之後,會呼叫 make工具, make 就會在當前目錄按照檔名就會找 makefile 檔案, Makefile 的命名必須是 makefile 或Makefile,m大寫小寫都是可以的。 作者剛才輸入命令報錯的原因是因為在當前目錄下是沒有 makefile 這個檔案的, 作者這裡新建一個Makefile檔案, 然後在當前目錄下輸入make命令, 我輸入完