Como compilar um código otimizado para Raspberry Pi

image_pdfimage_print

O processador da Broadcom no Raspberry Pi contém um processador de uso geral ARM v6 e uma GPU Broadcom VideoCore IV. Não há dados disponíveis atualmente em outros núcleos (se houver) disponíveis no BCM2835.

Existe amplo suporte de compiladores para o processador ARM, incluindo o GCC.

Há também vários cross-compiler toolchains.

As flags do compilador gcc que produzirão o código mais ideal para o RPi são:

-Ofast -mfpu=vfp -mfloat-abi=hard -march=armv6zk -mtune=arm1176jzf-s

-Ofast pode produzir erros de compilação para alguns programas.

Nesse caso, -O3 ou -O2 devem ser usados no lugar.

Note que -mcpu = arm1176jzf-s pode ser usado no lugar de -march = armv6zk -mtune = arm1176jzf-s.

Se você quiser gerar um compilador relativamente atualizado que use as flags otimizadas por padrão, você pode executar sua própria versão do Linaro GCC.

Versões mais novas do Raspberry tem Armv7 e Armv8. Este último, até a data de hoje é sempre desativado para que todos rodem sobre base 32 bits. Caso queira ativar base64 e os poderes deste último processador clique aqui.

Gostou? Tire um minutinho e dê sua contribuição para Drall Dev Community no Patreon!