Ich bin zumindest einen Schritt weiter und konnte mir erfolgreich einen fpc Compiler von Linux nach PowerPc bauen.
Nur wenn ich damit ne Simple Source zum Test mit 3 Klassen (Windows.pas, Socket.pas, SysUtils.pas) kompilieren möchte hagelt es fehler. Hab mir das aber schon gedacht. Anschließend hab ich es mit der Windows.pp und Kompilierschalter -Fu versucht. Aber das war auch nicht besser. Fehler wie dos.pp Error: Illegal assembler style specified "ATT" waren dann zu finden.
Ähm... du verwendest die
Unit Windows
unter Linux... fällt dir was auf? (Hinweis: plattformspezifische
Unit)
Zitat:
Möchte mir eigentlich ein kleines Programm für meine auf Linux basierte NAS Box bauen, das über Socket mit meiner Windows Maschine kommuniziert. Unter Windows hab ich für solche Fälle die Klasse von NARSES benutzt und mir ein kleines Protokoll für die kommunikation zwischen den Rechnern gebaut. Wäre natürlich schön wenn das für Linux auch klappt. Erstens bin ich mit der Narses Klasse vertraut und zweitens bräuchte ich mein Protokoll nur etwas modifizieren.
Ich habe keine Ahnung, was diese Klasse von Narses intern verwendet, aber wenn sie Windows spezifische Funktionalitäten verwendet (dazu zählt auch die Verwendung der
Unit Windows
), dann kannst du sie überall außer unter Windows (
Win32, Win64, vlt. auch WinCE) vergessen.
Hier kannst du jedoch ein paar Informationen zum Thema Netzwerk finden.
Zitat:
Ich probiere gerade den Tipp von bernhard_LA aus. Wenn das funktioniert, dann ist ja mal genial unter Windows. Ich dachte immer crosscompile unter Windows für Linux sollte man besser gleich vergessen. Wegen den fehlenden libs usw. Aber da scheint ja alles dabei zu sein.
Ich weiß nicht, ob CodeTyphoon das Cross Compilen nach powerpc-linux unterstützt, aber die Aussage, dass man die Bibliotheken braucht ist korrekt. Nur solange du keine Bibliotheken verwendest (zum Beispiel für Threading,
SQL Datenbanken, etc.), dann brauchst du sie auch nicht und kannst ausnutzen, dass FPC Executables erzeugt, die nicht von der
libc abhängen, sondern die direkt die Schnittstelle des Linuxkernels verwenden.
Gruß,
Sven