交叉編譯和交叉除錯環境搭建及使用
1. 交叉編譯器
1.1 交叉編譯器介紹
在一種計算機環境中執行的編譯程式,能編譯出在另外一種環境下執行的程式碼,我們就稱這種編譯器支援交叉編譯。這個編譯過程就叫交叉編譯。簡單地說,就是在一個平臺上生成另一個平臺上的可執行程式碼,而這種工具就是交叉編譯器(cross compiler)。
1.2 搭建交叉編譯環境
1.2.1 實驗環境
交叉編譯工具:arm-linux- 4.2.2
編譯平臺:Ubuntu10.10
開發板型別:UT-S3C6410
1.2.2 搭建步驟
1) 在/usr/local/下建立交叉編譯器的安裝目錄arm:
sudo mkdir /usr/local/arm
2)將下載的交叉編譯器包解壓到/usr/local/arm目錄下:
sudo tar jxvf cross-4.2.2-eabi.tar.bz2 -C /usr/local/arm/
3)解壓成功後,修改PATH環境變數:
sudo vim /etc/profile
在檔案為加入交叉編譯器arm-linux-所在的路徑:
export PATH=$PATH:/usr/local/arm/4.2.2-eabi/usr/bin
然後退出vim。
4) 更新一下配置檔案/etc/profile:
source /etc/profile
5)檢測是否安裝成功:
現在就可以使用交叉編譯器了,寫一個測試程式helloworld,交叉編譯下,看是否能在開發板上執行。
i. 交叉編譯測試程式
arm-linux-gcc helloworld.c -o helloworld
ii.把生成的可執行檔案helloworld複製到NFS的掛載目錄下:
sudo cp ./helloworld /nfsboot
注意:本實驗中開發板使用NFS掛載rootfs,nfsboot是NFS的掛載目錄。
iii.在超級終端上執行:
./helloworld
執行結果:
本篇文章來源於 Linux公社網站(www.linuxidc.com) 原文連結:http://www.linuxidc.com/Linux/2012-04/58066.htm
相關文章
- 交叉編譯-Mac環境使用NDK編譯FFmpeg編譯Mac
- Ubuntu交叉編譯環境配置Ubuntu編譯
- 交叉編譯和 RPC編譯RPC
- 交叉編譯編譯
- lazarus交叉編譯編譯
- golang交叉編譯Golang編譯
- GDB交叉編譯編譯
- linux環境下vscode 中C/C++編譯及除錯環境的搭建LinuxVSCodeC++編譯除錯
- Hi3516開發筆記(七):Hi3516虛擬機器交叉開發環境搭建之交叉編譯Qt筆記虛擬機開發環境編譯QT
- go 交叉編譯,部署Go編譯
- 交叉編譯入門編譯
- 編譯器的自展和自舉、交叉編譯編譯
- protobuf 的交叉編譯使用(C++)編譯C++
- linux與windows交叉編譯LinuxWindows編譯
- golang初學:交叉編譯Golang編譯
- 交叉編譯mupdf1.15.0編譯
- 嵌入式GDB除錯Linux C程式或交叉編譯(開發板)除錯LinuxC程式編譯
- 32位支援:使用 GCC 交叉編譯GC編譯
- Go跨平臺交叉編譯Go編譯
- Go - armv7 交叉編譯Go編譯
- risc-v環境搭建及除錯除錯
- Rust 交叉編譯與條件編譯總結Rust編譯
- 使用 goxc 方便的進行交叉編譯分發Go編譯
- 實現交叉編譯gdb和gdbserver(gdb-7.6)編譯Server
- 交叉編譯場景分析(arm-linux)(四)--編譯readline和ncurses編譯Linux
- 交叉編譯工具鏈構建原理編譯
- 交叉編譯c++給android呼叫編譯C++Android
- Go語言交叉編譯工具goxGo編譯
- Android編譯環境搭建Android編譯
- openform環境搭建-編譯ORM編譯
- 全網可用交叉編譯工具鏈大全編譯
- 關於Gdb工具的交叉編譯、移植編譯
- Tinyx 交叉編譯配置檔案(arm版)編譯
- Android10.0 系統解析(02)——搭建Android原始碼編譯除錯環境Android原始碼編譯除錯
- 交叉編譯場景分析(arm-linux)--序編譯Linux
- 在WSL下為OpenWRT交叉編譯出CMake編譯
- 如何對 Neuron 原始碼進行交叉編譯原始碼編譯
- Golang在各平臺下如何交叉編譯Golang編譯
- 句子嵌入: 交叉編碼和重排序排序