Kleines howto crosscompiling Beaglebone
Befehle die Ihr direkt in der Konsole eingeben könnt sind blau markiert
- Linux Umgebung (Empfehlung UBUNTU) entweder Live Stick Peristent Modus empfohlen oder virtuelle Maschine
(ich hab mir einen Stick erstellt mit LILI Usb Creator )
- konsole öffnen xterm
Sie müssen registriert sein, um Links zu sehen.
Installation cross compiler mit
- sudo apt-get update
sudo apt-get install gcc-arm-linux-gnueabi
- jetzt erstellen wir ein Verzeichnis (ich nenne es mal Bone)
ls
mkdir bone
cd bone
ls -al
- sollte jetzt ein leeres verzeichnis sein
jetzt installieren wir noch Git um die Sourcen für Kernel und Patches herunterladen zu können mit
sudo apt-get install git
- jetzt clonen wir die git von Robert C Nelson (Ersteller der scripte ) mit
git clone git://github.com/RobertCNelson/linux-dev.git
damit wird ein Verzeichnis namens linux-dev in unserem Verzeichnis Bone erstellt
- wir geben ein
ls -al
wir sollten das Verzeichnis sehen und wechseln dorthin
cd linux-dev
- jetzt checken wir den dir sourcen zum gewünschten Kernal aus mit
git checkout origin/am33x-v3.8 -b am33x-v3.8
kann auch andere Kernel ausgecheckt werden 3.11 oder 3.12 ganz nach belieben ich nutze 3.8 wegen LCD Display (3.12 funzt bei mir nicht mit display) also wenn Ihr Kernel 3.11 wollt dann so
git checkout origin/am33x-v3.11 -b am33x-v3.11
oder 3.12
git checkout origin/am33x-v3.12 -b am33x-v3.12
- Verzeichnis linux-dev verlassen mit
cd ..
- linux stable download mit
git clone git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git
es wird das Verzeichnis linux-stable erstellt
in unserem Verzeichnis Bone befinden sich jetzt als 2 Unterverzeichnisse linux-dev und linux-stable
- wir wechseln wieder ins Verzeichnis linux-dev
cd linux-dev
und kopieren die Beispieldatei system.sh.sample nach system.sh mit
- cp system.sh.sample system.sh
und müssen diese editieren
sudo nano system.sh
Sie müssen registriert sein, um Links zu sehen.
12. die Stellen im Bild anpassen
bei 1. Raute entfernen und wie im Bild zu sehen den pfad so einstellen
CC=arm-linux-gnueabi-
bei 2. Raute entfernen und an euren Pfad anpassen
LINUX_GIT=/home/Benutzername/euer am Anfang erstelltes Verzeichnis/linux-stable/
bei 3. nur Raute entfernen
bei 4. dazu kommen wir später
die Datei speichern mit STRG-X und mit j bestätigen
13. jetzt starten wir die Kernel erstellung und Anpassung mit
./build_kernel.sh
jetzt könnte eine Fehlermeldung kommen
Sie müssen registriert sein, um Links zu sehen.
dann müsst ihr noch die Zeile über Faileddependency check kopieren und ausführen
sudo apt-get install build-essential device-tree-compiler fakeroot lzma lzop u-boot-tools libncurses5-dev:i386
git config --global user.name "Beagle Bone"
git config --global user.email "beagle@bone.black"
so und jetzt noch einmal
./build_kernel.sh
14. nach einer Weile kommt dann folgender Bildschirm
Sie müssen registriert sein, um Links zu sehen.
dort gehenwir mit den Pfeiltasten zu dem Punkt
Kernel Features –------->
Sie müssen registriert sein, um Links zu sehen.
- dann Enter und gleich der erste Punkt ist Symetric Multi-Proccesing dieses wählen wir ab durch drücken der Leertaste
Sie müssen registriert sein, um Links zu sehen.
dann mit exit (ganz unten) verlassen oder weitere Änderungen vornehmen
dann weiter mit exit
15. jetzt wird der Kernel erstellt (dauert ein Weilchen) und in /bone/linux/deploy/ abgelegt
Warnungen können ignoriert werden
Glückwunsch der Kernel und alle benötigten Files hast du jetzt