fpc bauen für target arm-linux

Für Fragen zur Programmiersprache auf welcher Lazarus aufbaut
Antworten
Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6873
Registriert: So 7. Jan 2007, 10:20
OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
CPU-Target: 32Bit (64Bit)
Wohnort: Burgenland
Kontaktdaten:

fpc bauen für target arm-linux

Beitrag von af0815 »

Ich bin dabei mit einen speziellen FPC für das Target arm-linux zu bauen.

Ich kann keine fertigen Pakete verwenden, da es für die Zielplattform noch nichts gibt. Ich muß mir zuerst mittels Crosscompiler die Basis schaffen, damit ich auf der Zielplattform dann weitermachen kann. Dort kann ich derzeit kein funktionierendes Bootstrap Compiling für den fpc machen (lt. fpk).

Also muß ich das auf i386 erledigen (XP, Vista oder Ubuntu möglich). Ich nehme dazu die Sourcen aus dem fp-svn. Für die Targets mit dem Ziel i386 gibt es keine Problem mit dem erstellen. Nur wenn ich auf arm-linux (NICHT arm-WinCE) gehe wird es problematisch.

Bevor ich jetzt in Details gehe, die Frage vorweg. Kann wer den fpc mit dem Targets (arm-linux) erstellen, bzw. hat schon erstellt, bevorzugt wäre unter Linux.

Die ganzen Anlkeitungen die noch am ehesten passen würden, beziehen sich auf alte Versionen vom fpc (1.9 und älter) und andere Plattformen als Linux.
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

mschnell
Beiträge: 3444
Registriert: Mo 11. Sep 2006, 10:24
OS, Lazarus, FPC: svn (Window32, Linux x64, Linux ARM (QNAP) (cross+nativ)
CPU-Target: X32 / X64 / ARMv5
Wohnort: Krefeld

Beitrag von mschnell »

Verstehe ich das recht ? Du willst Du den Compiler auf dem ARM laufen lassen anstatt auf dem PC "cross" zu compilieren ?

Hast Du es denn schon geschafft, ein "Hello World" User-Programm für ARM/Linux zu übersetzen ? Mit Kommando-Zeilen FPC und/oder mit Lazarus ? "Hello World" mit oder ohne GUI ?

- Michael

Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6873
Registriert: So 7. Jan 2007, 10:20
OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
CPU-Target: 32Bit (64Bit)
Wohnort: Burgenland
Kontaktdaten:

Beitrag von af0815 »

Ich MUSS zuerst cross kompileren um mir einen geeigneten, stabilen fpc letztendlich zu bauen.

fv (aus einen anderen arm-paket) läuft, also ohne Grafik-GUI. Ja ich habe mit eine (nicht angepassten) fpc bereits (prinzipiell) compileren können (externer assembler). Nur linken geht nicht, weil die Versionen der Bibliotheken nicht zusammenpassen und es bei Gleitkommabefehlen zu inkompatibilitäten kommen würde.

Mein Target ist, Lazarus auf den arm-linux zu bringen und sei es nur damit ich sehe, das es nichts bringt.

Vor allen, hat mich erstaunt wie (relativ) schnell der arm ist. Ich würde mir da schon drauf trauen was zu kompilieren.
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

Hitman
Beiträge: 512
Registriert: Mo 25. Aug 2008, 18:17
OS, Lazarus, FPC: ArchLinux x86, WinVista x86-64, Lazarus 0.9.29, FPC 2.4.1
CPU-Target: x86
Wohnort: Chemnitz

Beitrag von Hitman »

Sofern ich deinen letzten Post richtig verstanden habe, ist das Problem also "nur" noch das Linken. Ich gehe davon aus, dass du die nötigen cross-binutils für das Ziel arm-linux schon hast. Damit das Linken geht, musst du das ganze dann wahrscheinlich so aufziehen, wie es für win32 --> linux crosscompiling/linking nötig ist: du erstellst irgendwo ein Verzeichnis, in dem du die benötigten Libraries von deinem arm-linux reinwirfst (sicherlich libc, math, etc.). Dem Compiler übergibst du dann noch den Parameter -Fl samt dem Pfad zu diesem Library Verzeichnis, dann nutzt er - sofern vorhanden - diese zum Linken. Das kannst du sicher auch ganz bequem per #ifdef in der fpc.cfg festlegen.

Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6873
Registriert: So 7. Jan 2007, 10:20
OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
CPU-Target: 32Bit (64Bit)
Wohnort: Burgenland
Kontaktdaten:

Beitrag von af0815 »

Hitman hat geschrieben:Sofern ich deinen letzten Post richtig verstanden habe, ist das Problem also "nur" noch das Linken.
Nein, ich muss alles von null auf aufbauen. Denn ich brauchen einen arm-linux fpc mit ein paar spezialitäten und die libs alle speziell recompilert.

Ich muss also alles bei Null anfangen, das andrere war ein (pfuschmässiger) prinzipversuch :-)
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

Antworten