Estou ansioso para começar a compilar e gostaria de usar as ferramentas mais recentes e melhores.
De fato, as melhores e mais recentes ferramentas não precisam ser construídas por você. No repositório do Raspberry Pi Tool GitHub, você encontrará as cadeias de ferramentas X86_64
e x686
para o software de compilação cruzada.
Eu recomendo usar a x86-linux64-cross-arm-linux-hardfp
cadeia de ferramentas, pois ela será compilada para o Hard Floating Point, o que resultará em um sistema muito mais rápido.
$ 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.
Nota: Se você estiver usando um kernel existente, precisará usar a cadeia de ferramentas que corresponde ao kernel. Os aplicativos HardFP não funcionarão em um kernel SoftFP.
Para usar a cadeia de ferramentas, basta verificar o repositório:
git clone https://github.com/raspberrypi/tools.git --depth 1
O --depth
parâmetro significa que você não precisa esperar o download do histórico do repositório também (já que não o usaremos).
Em seguida, adicione os binários à sua variável PATH:
export PATH=~/tools/arm-bcm2708/x86-linux64-cross-arm-linux-hardfp/bin:$PATH
Ou para persistir no PATH:
echo "export PATH=~/tools/arm-bcm2708/x86-linux64-cross-arm-linux-hardfp/bin:$PATH" >> ~/.bashrc
source ~/.bashrc
Para compilar com a cadeia de ferramentas, agora você pode adicionar o CROSS_COMPILE
parâmetro Por exemplo, ao executar make
:
make CROSS_COMPILE=arm-bcm2708hardfp-linux-gnueabi-
Ou, para facilitar isso, você pode salvar a variável bashrc
novamente:
echo "export TARGET=arm-bcm2708hardfp-linux-gnueabi" >> ~/.bashrc
source ~/.bashrc
e agora use a variável ao compilar:
make CROSS_COMPILE=${TARGET}