請問一下用arm-elf-gcc跟arm-unknown-linux-gcc編出來的執行檔格式是差在哪呢?
為何arm-elf的格式只能在NON-OS的平台環境下執行且不能對週邊做IO,例如printf
而arm-unknown-linux的格式卻可在有OS的環境下執行並且可對週邊做IO
底下是我自己作的筆記但是還是不太明瞭原因
arm-elf和arm-unknown-linux的差別
arm-elf可在non-os的平台上執行, 但不能對週邊I/O, 只能做運算,
而arm-unknown-linux則可以
arm-elf不能對週邊I/O是, 因為對週邊I/O需要有週邊的Driver, 而Driver需透過OS
因此如果我們要使cross complier編出來的檔案可以在某平台(ex. 新華)上執行
就要有該平台的include和lib, 可以抓該平台作業系統中根目錄下的include和lib
麻煩各位幫我解惑 謝謝