Я нетерплячий збиратися на компіляцію, і я хотів би використовувати найновіші та найкращі інструменти.
Насправді, новітні та найкращі інструменти не потрібно будувати самостійно. У сховищі Raspberry Pi Tool GitHub ви знайдете ланцюжки інструментів X86_64
та x686
програмне забезпечення для перехресного складання програмного забезпечення.
Я рекомендую використовувати x86-linux64-cross-arm-linux-hardfp
ланцюжок інструментів, оскільки це буде компілювати для Hard Floating Point, що призведе до набагато швидшої системи.
$ arm-bcm2708hardfp-linux-gnueabi-gcc --version
arm-bcm2708-linux-gnueabi-gcc-4.5.1 (Broadcom-2708) 4.5.1
Copyright (C) 2010 Free Software Foundation, Inc.
Примітка. Якщо ви використовуєте наявне ядро, вам доведеться використовувати ланцюжок інструментів, яка відповідає ядру. HardFP-програми не працюватимуть на ядрі SoftFP.
Щоб використовувати ланцюжок інструментів, просто перегляньте сховище:
git clone https://github.com/raspberrypi/tools.git --depth 1
--depth
Параметр буде означати , що ви не повинні чекати історії сховище для завантаження , а також (так як ми не будемо використовувати його).
Потім додайте двійкові файли до змінної PATH:
export PATH=~/tools/arm-bcm2708/x86-linux64-cross-arm-linux-hardfp/bin:$PATH
Або зберігати ПАТ:
echo "export PATH=~/tools/arm-bcm2708/x86-linux64-cross-arm-linux-hardfp/bin:$PATH" >> ~/.bashrc
source ~/.bashrc
Для компіляції з ланцюжком інструментів тепер можна додати CROSS_COMPILE
параметр. Наприклад, під час запуску make
:
make CROSS_COMPILE=arm-bcm2708hardfp-linux-gnueabi-
Або щоб зробити це простіше, ви можете зберегти змінну bashrc
знову:
echo "export TARGET=arm-bcm2708hardfp-linux-gnueabi" >> ~/.bashrc
source ~/.bashrc
а тепер використовуйте змінну при компілюванні:
make CROSS_COMPILE=${TARGET}