1、 文檔目標(biāo)
GHS編譯器驅(qū)動(dòng)程序語(yǔ)法
2、 問題場(chǎng)景
初步了解GHS 驅(qū)動(dòng)程序的語(yǔ)法。
3、軟硬件環(huán)境
1.軟件版本:MULTI 8.1.4,Compiler 2023.1.4 ARM
2.電腦環(huán)境:Window 10
4、內(nèi)容介紹
1.編譯驅(qū)動(dòng)程序的語(yǔ)法為:
driver [ file | -option ]...
2.driver 是以下之一:
○ ccarm——適用于只有C和匯編代碼的程序。生成ARM代碼和ARM庫(kù)。
○ ccthumb——適用于只有C和匯編代碼的程序。生成Thumb代碼和Thumb庫(kù)。
○ cxarm——適用于有一些C++代碼的程序。生成ARM代碼和ARM庫(kù)。
○ cxthumb——適用于有一些C++代碼的程序。生成Thumb代碼和Thumb庫(kù)。
3.file 是以下一種或多種文件類型:
○ C或C++源文件
○ 匯編源文件
○ 對(duì)象文件或?qū)ο笪募?kù)
○ Linker指令文件
4.-option 是一個(gè)或多個(gè)編譯器驅(qū)動(dòng)程序選項(xiàng)。所有選項(xiàng)都區(qū)分大小寫(例如-l指定庫(kù),而-L指定庫(kù)目錄),并且大多數(shù)選項(xiàng)與主機(jī)無關(guān)。
指定多個(gè)文件或選項(xiàng)時(shí),請(qǐng)用空格將它們隔開。通常,無論您當(dāng)前是在編譯、匯編、歸檔還是鏈接,都應(yīng)該在所有構(gòu)建步驟中傳遞相同的驅(qū)動(dòng)程序選項(xiàng)。此規(guī)則的例外情況包括選項(xiàng)-L和-l,它們可以在非鏈接步驟中安全地省略。此外,選項(xiàng)-D和-I可能因匯編而異,如果不涉及預(yù)處理,則可以在鏈接步驟中安全地省略
5.編譯器驅(qū)動(dòng)程序以以下方式處理文件和選項(xiàng):
?首先,驅(qū)動(dòng)程序讀取所有選項(xiàng)。如果兩個(gè)選項(xiàng)代表同一功能的不同選擇,則后面的選項(xiàng)將覆蓋前面的選項(xiàng)。如果驅(qū)動(dòng)程序遇到無法識(shí)別或無效的選項(xiàng),它將忽略該選項(xiàng)并發(fā)出警告或錯(cuò)誤。
?其次,驅(qū)動(dòng)程序按照文件在命令行上顯示的順序處理文件。如果一個(gè)文件中發(fā)生錯(cuò)誤,將繼續(xù)處理下一個(gè)文件。如果沒有出現(xiàn)錯(cuò)誤,所有對(duì)象文件和庫(kù)將按照命令行上指定的順序鏈接在一起。如果驅(qū)動(dòng)程序遇到文件擴(kuò)展名無法識(shí)別的文件,它會(huì)將該文件傳遞給鏈接器。鏈接器將嘗試識(shí)別文件并正確使用它。