2021-05-12 14:32:11
設定樹莓派交叉編譯平台
2020-06-16 17:32:04
Raspberry Pi本身的硬體效能不是很高,編譯大型程式,需要消耗很多時間,所以在pi上直接編譯原始碼 有時候是件痛苦的事情。
為了節約時間,不如在效能強大的台式電腦上設定交叉編譯平台,節省編譯所需時間。雖然設定交叉編譯平台會比較麻煩,也是件痛苦的事情,但是長痛不如短痛~~
這裡選用的 Raspberry Pi 作業系統 採用Raspberry Pi 基金會官方推薦的 也是普及率最高的 Raspbian,是基於Debian Wheezy版本的armv6 Hardfloat 分支版本。選用的PC機作業系統,則是 debian 發布的 Debian Wheezy Beta4 X86, 採用同樣的發行版本原始碼,可以讓軟體包版本儘量保持一致。
選用的交叉編譯工具鏈,是Raspberry Pi 基金會官方發布的 交叉編譯工具包,也就是官方用來編譯Raspbian作業系統所用的交叉編譯工具鏈,是最適合編譯用在Raspberry pi 上執行的程式的工具包。
以下操作,在PC機debian作業系統下完成
首先下載最新的編譯工具包
git clone git://github.com/raspberrypi/tools.git
完成後可以在當前目錄下看到tools資料夾。
把編譯鏈工具安裝到 /opt 資料夾下面 需root許可權。
cd tools cp -r arm-bcm2708 /opt
設定預設路徑,加入編譯工具路徑。
export PATH=/opt/arm-bcm2708/arm-bcm2708hardfp-linux-gnueabi/bin:$PATH
設定編譯引數。
export CFLAGS="-O2 -pipe -mcpu=arm1176jzf-s -mfpu=vfp -mfloat-abi=hard -w"
至此 交叉編譯環境設定完成
編譯的時候,在make後面加上用於指定交叉編譯器的引數。
CROSS_COMPILE=arm-bcm2708hardfp-linux-gnueabi-
該引數的意義是指定交叉編譯器為支援bcm2708晶片硬體浮點的arm編譯器。
如果是編譯linux核心,需要同時在make後面加上指定架構的引數。
ARCH=arm
本文永久更新連結地址:http://www.linuxidc.com/Linux/2016-09/135508.htm
相關文章