View previous topic :: View next topic |
Author |
Message |
musv Advocate
Joined: 01 Dec 2002 Posts: 3337 Location: de
|
Posted: Thu Dec 06, 2012 11:09 pm Post subject: Cross-Compiling, der 2. Versuch |
|
|
Hallo,
Ich hatte ja schon vor einiger Zeit mal versucht, einen Cross-Compiler aufzusetzen, da mein Hauptrechner ein Xeon ist und der kleine ein Atom. Der Xeon verstand leider den movbe-Befehl des Atoms nicht. Bin damit gescheitert. Gelöst hab ich das damit, dass ich halt bei den betreffenden Paketen movbe aus den CFlags entfernt hab. Damit funktionierte dann das Compilieren in der Chroot-Umgebung ohne Cross-Compiler.
Jetzt hab ich ein neues Projekt:
Heute ist mein NSA-325 angekommen. Da soll natürlich ein Gentoo drauf. Die Anleitung für's Debian gibt's hier. Wenn ein Debian läuft, sollte das mit Gentoo auch machbar sein. Das Breakout-Modul hab ich auch schon.
Wenn ich mir das Embedded-Handbuch so anseh, sind mir ein paar Sachen noch nicht so richtig klar.
1. Umgebung der Installationsdateien
So wie ich das mitbekommen hab, wird die gesamte Umgebung auf der Build-Maschine installiert. Die kompilierten Pakete werden dann nur als Quickpkg auf das Embedded-Ding (Zyxel bei mir) rübergeschoben. So richtig sympathisch ist mir die Idee nicht. Auf dem Zyxel hab ich genug Speicherplatz. Ich würde lieber die gesamten Dateien auf dem Zyxel speichern, per NFS die Umgebung der Build-Maschine zugänglich machen. Also analog zum Chroot-Compilieren. Nur leider bin ich damit schon gescheitert, als ich für mein Atom-Notebook compilieren wollte. Die Environmentvariablen und Cross-Compile-Scripte waren auf eine vollständige Umgebung auf der Buildmaschine ausgerichtet. Wie macht ihr das? Was ist da die beste Lösung?
2. Qemu-User
Als ich für den Atom per Cross-Compiler bauen wollte, brachen alle größeren Pakete ab, weil der Compiler diverse Libs nicht finden wollte, z.B. zlib, jpeg, tiff. Für einige davon konnte ich den Compilier durch das Setzen diverser Environment-Variablen zum Weitermachen compilieren. Bei anderen (bzip) weigerte sich das Automake jedoch konsequent. Im Embedded-Handbuch hab ich dann was von qemu-user gelesen. Ist es das, was ich denke/hoffe, dass man über qemu-user eine saubere Build-Umgebung bekommt, in der die Lib-Not-Found-Probleme verschwinden? Wie funktioniert das genau? Was muss ich beachten?
Ich hoffe, ihr könnt mir mal ein paar zusätzliche Hinweise geben, um mir den Einstieg etwas zu erleichtern. |
|
Back to top |
|
|
Max Steel Advocate
Joined: 12 Feb 2007 Posts: 2229 Location: My own world! I and Gentoo!
|
Posted: Thu Dec 06, 2012 11:23 pm Post subject: |
|
|
Ich bin eigentlich bisher gut gefahren indem ich mittels crossdev auf meinen starken Maschinen einen Builder für die Architektur auf den kleinen Erzeuge und diese mittels distcc dem TARGET zur Verfügung stelle... _________________ mfg
Steel
___________________
Heim-PC: AMD Ryzen 5950X, 64GB RAM, GTX 1080
Laptop: Intel Core i5-4300U, 16GB RAM, Intel Graphic
Arbeit-PC: Intel i5-1145G7, 16GB RAM, Intel Iris Xe Graphic (leider WSL2) |
|
Back to top |
|
|
musv Advocate
Joined: 01 Dec 2002 Posts: 3337 Location: de
|
Posted: Fri Dec 07, 2012 11:04 am Post subject: |
|
|
distcc will ich gerade nicht.
Auf meinem Hauptrechner hab ich 24 GB Ram. Auf dem kleinen Rechner wäre das Ding vermutlich nur am Swappen. Wollte gern das Compilieren vollständig auf dem Buildrechner erledigen.
Am liebsten wäre mir sowas:
- NFS-Freigabe / vom Zyxel, Einbindung irgendwo ins Cross-Compile-Verzeichnis vom Buildrechner
- Nutzung des Cross-Compilers (Qemu-Users) auf der Buildmaschine. Der liest Headerdateien und Package-Config vom Zyxel aus der NFS-Freigabe und installiert dann auch dort hin.
Problem ist dann wohl auch noch, wenn irgendwelche Tools in der Installationsroutine ausgeführt werden. Beim Atom war das update-icon-cache, was nicht CPU-Instruction-kompatibel war. |
|
Back to top |
|
|
musv Advocate
Joined: 01 Dec 2002 Posts: 3337 Location: de
|
Posted: Wed Dec 19, 2012 9:40 pm Post subject: |
|
|
Ich komm noch nicht zum Basteln. Aber ich glaub, ich hab gefunden, was ich suche:
http://wiki.openoffice.org/wiki/ARM
Ich werd demnächst mal berichten, ob's so funktioniert, wie ich will. |
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|