1-1-2 交叉编译工具链
(此筆記是對上一篇《1-1-1 的工具安裝與測試》的補(bǔ)充)
1. arm-linux-gcc
? ? 說明:gcc為常規(guī)編譯器,頭文件一般存放于 /usr/local/arm/lib中
? ? 用法舉例:
? ? ? ? arm-linux-gcc hello.c -o hello
? ? ? ? arm-linux-gcc -static hello.c -o hello
2. arm-linux-ld
? ? 說明:鏈接器,生成.elf文件
? ? 用法舉例:
? ? ? ? arm-linux-ld -Tled.lds -o led.elf led.o
3. arm-linux-readelf
? ? 說明:.elf文件查看器,可以用來查看.elf
? ? 用法舉例:
? ? ? ? arm-linux-readelf -a led.elf /*查看大小端模式,程序運(yùn)行平臺*/
? ? ? ? arm-linux-readelf -d hello ? /*查看程序依賴的庫文件*/
4. file
? ? 說明:查看應(yīng)用程序信息
? ? 用法舉例:
? ? ? ? file hello
5. arm-linux-objdump
? ? 說明:用作反匯編器,輸出文本至dump文件中,若編譯時加入[-g]選項(xiàng),可利用此命令查看調(diào)試信息。
? ? 用法舉例:
? ? ? ? arm-linux-objdump -D -S hello > dump
6. arm-linux-objcopy
? ? 說明:作用為把通過鏈接器鏈接出來的.elf文件轉(zhuǎn)變?yōu)槁惆迥苤苯舆\(yùn)行的.bin二進(jìn)制可執(zhí)行文件。
? ? 用法舉例:
? ? ? ? arm-linux-objcopy -O binary led.elf led.bin
轉(zhuǎn)載于:https://blog.51cto.com/elvinsys/1839104
總結(jié)
以上是生活随笔為你收集整理的1-1-2 交叉编译工具链的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。