gdb交叉編譯與編譯參數說明

下載can-utils源碼後手動編譯的步驟

./configure CC=arm-linux-gnueabihf-gcc --target=arm-linux  --host=arm-linux

build:執行代碼編譯的主機,自己的主機系統ubuntu會是x86_64-pc-linux-gnu。如果不做配置一般由config.guess來猜就可以。
host:編譯出來的二進制程序所執行的主機,如果本機編譯,本機執行這個值就等於build。交叉編譯的時候用host指定運行主機 比如arm-linux。
target:這個選項只有在建立交叉編譯環境的時候用到,他會用主機上的編譯器,編譯一個新的編譯器gcc,這個新的編譯器將來編譯出來的其他程序將運行在target指定的系統上。

make distclean 刪除配置和編譯結果

make CC=arm-linux-gnueabihf-gcc 編譯

----------------------------------------------------------------------------------------------------

交叉編譯GDBwiki:

https://sourceware.org/gdb/wiki/BuildingCrossGDBandGDBserver

安裝textinfo

configure有error 找不到makeinfo,要安裝textinfo

sudo apt-get install texinfo

安裝arm-linux-gnueabihf-g++

sudo apt-get install g++-arm-linux-gnueabihf

sudo apt-get install arm-linux-gnueabihf-gcc

build 命令

在加上CXX之前一直提示 g++ libreadline.a ... :/usr/lib/ld libreadline.a 格式錯誤,猜測應該用arm-linux-gnueabihf-g++而不是g++ (幾近崩潰才發現)

./configure --host=arm-linux-gnueabihf --target=arm-linux-gnueabihf CC=arm-linux-gnueabihf-gcc CXX=arm-linux-gnueabihf-g++

把gdb copy到板子上即即可運行

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章