Środowisko cross-kompilacji dla architektury ARM

Skrypt budujący toolchain:

toolchain-build.sh

  • Właściwe polecenia (listingi z książki) zaczynają się od linii 149. Wcześniej znajduje się konfiguracja, kod obsługujący parametry, pobieranie i kasowanie archiwów źródłowych i pozostałości kompilacji.
  • Po uruchomieniu bez parametrów, zostanie wyświetlona pomoc.

Znaczenie opcji konfiguracyjnych:

Zmienna Działanie
CEL=/opt/tools Katalog, do którego zostaną zainstalowane narzędzia i pliki systemy docelowego (sysroot).
TARGET_LIBC=eglibc Wersja biblioteki standardowej, możliwe opcje to eglibc albo uClibc, ta druga wymaga dodatkowego pliku z konfiguracją biblioteki. Należy go pobrać stąd i umieścić w katalogu, w którym znajduje się powyższy skrypt.
TARGET=arm-none-linux-gnueabi Prefix narzędzi toolchain-a (bez myślnika na końcu).
JOBS=4 Ilość zadań kompilacji uruchamianych równocześnie.

Należy ponadto rozważyć dodanie w odpowiednich miejscach opcji kompilacji GCC, które włączą generowanie kodu dla zadanego wariantu architektury (armv4, armv5, armv7) oraz rdzenia (Cortex-A9). Zostały one opisane w książce.

Ten sposób budowy toolchaina znakomicie nadaje się do testów oraz pozwala skorzystać z najnowszych wersji narzędzi oraz dowolnych kombinacji parametrów konfiguracyjnych. Do zastosowań produkcyjnych pewniejsze są jednak gotowe toolchainy lub narzędzia półautomatyczne takie jak Crosstool-NG. Lepiej skorzystać z prekonfigurowanych toolchainów Crosstool-NG.

ostatnio zmienione: 2011/06/20 15:21