[gelöst] Laz1.9 unter Mint 18.2 und Crosscompiling

Für Installationen unter Linux-Systemen

[gelöst] Laz1.9 unter Mint 18.2 und Crosscompiling

Beitragvon kralle » 13. Jul 2017, 15:19 [gelöst] Laz1.9 unter Mint 18.2 und Crosscompiling

Hallo Leute,

ich werde langsam irre.
Ich habe mein Notbook komplett neu aufgesetzt.
OS: Linux Mint 18.2 Cinnamon 64-Bit
FPC: 3.0.2
LAZ: 1.9.0

Lazarus selber funktioniert, aber wenn ich wieder alles für das Crosscompiling einrichte, dann klappt das nicht.
Für Linux -> Win32 nutze ich das hier:

Nachfolgende Zeilen werden nacheinander in einem Terminal-Fenster eingegeben, das in diesem Verzeichnis „/home/laz-user/fpc-3.0.2“
(laz-user gegen Deinen Usernamen ersetzen) gestartet wird :
(Das „$“-Zeichen braucht Ihr nicht mit eingeben.)

$ sudo make all OS_TARGET=win32 CPU_TARGET=i386

und dann

$ sudo make crossinstall OS_TARGET=win32 CPU_TARGET=i386

Auch wenn man laut Wiki damit schon fertig ist, fehlen noch ein paar Anweisungen.

In der Datei „/etc/fpc.cfg „ müssen im Abschnitt

# --------------------------------
# Set Filename und Paths
# --------------------------------

noch diese Zeilen eingefügt werden:

# For Crosscompiling
-Fu/usr/local/lib/fpc/$fpcversion/units/$fpctarget/*

Die Datei ist zumindest bei mir schreibgeschützt und kann nur in einem Terminal-Fenster geöffnet werden, das mittels „Als Systemverwalter öffnen“ geöffnet wurde.

Jetzt kommt noch ein symbolischer Link der in einem Terminalfenster eingegeben wird:

$ sudo ln -s /usr/local/lib/fpc/3.0.2/ppcross386 /usr/bin/

Alles läuft problemlos durch. Ich konfiguriere dann naoch die "Erstellmodi" und die Einbindung von "WINE".
Wenn ich dann aber den Erstellmodus auf "Win 32" ändere, erhalte ich die Fehlermeldung
Compiler "/usr/bin/fpc" unterstützt nicht das Ziel i386-win32"

Laut Wiki, soll diese Meldung am häufigsten kommen, wenn man in der "fpc.cfg" etwas falsch eingetragen hat.
Ich habe schon mehrfach Zeichen für Zeichen verglichen, ob ich alles richtig eingetragen habe ohne einen Fehler zu finden.
Was mich richtig irre macht, ist die Tatsache, dass es in einer VM Problemlos funktioniert.

Was kann noch Ursache für die Fehlermeldung sein?

Gruß Heiko
Zuletzt geändert von kralle am 14. Jul 2017, 10:47, insgesamt 1-mal geändert.
Linux Mint 18.2 und Lazarus 1.9 (FPC-Version: 3.0.2)
Windows 8.1 Pro Lazarus 1.6 + Delphi XE7SP1
kralle
 
Beiträge: 470
Registriert: 17. Mär 2010, 14:50
Wohnort: Bremerhaven
OS, Lazarus, FPC: Linux Mint 18.2 - Lazarus 1.9 - FPC 3.0.2 -Win8.1 & XE7Pro | 
CPU-Target: 64Bit
Nach oben

Beitragvon Mathias » 13. Jul 2017, 15:52 Re: Laz1.9 unter Mint 18.2 und Crosscompiling

Ich habe es auf die konventionelle Wiese nie Crosss-Compiling hingekriegt.

Es seit ich dfpcupdeluxe verwende, habe auch ich es geschafft. Unterdessen kann ich damit neben Windows auch Raspi-Anwendungen erzeugen. Und dies sogar mit FPC und Lazarus Trunk.

https://github.com/newpascal/fpcupdeluxe
Mit Lazarus sehe ich gün
Mit Java und C/C++ sehe ich rot
Mathias
 
Beiträge: 3193
Registriert: 2. Jan 2014, 17:21
Wohnort: Schweiz
OS, Lazarus, FPC: Linux (die neusten Trunc) | 
CPU-Target: 64Bit
Nach oben

Beitragvon kralle » 13. Jul 2017, 16:44 Re: Laz1.9 unter Mint 18.2 und Crosscompiling

Moin,
Mathias hat geschrieben:Ich habe es auf die konventionelle Wiese nie Crosss-Compiling hingekriegt.

ich schon und es frustiert mich so, das es jetzt zickt.
Mathias hat geschrieben:Es seit ich dfpcupdeluxe verwende, habe auch ich es geschafft. Unterdessen kann ich damit neben Windows auch Raspi-Anwendungen erzeugen. Und dies sogar mit FPC und Lazarus Trunk.
https://github.com/newpascal/fpcupdeluxe

Sollte ich vielleicht auch Anfangen zu nutzen.
Aber, ich möchte natürlich auch gerne wissen, warum es auf dem einem System funktioniert und auf dem anderen nicht.

Gruß Heiko
Linux Mint 18.2 und Lazarus 1.9 (FPC-Version: 3.0.2)
Windows 8.1 Pro Lazarus 1.6 + Delphi XE7SP1
kralle
 
Beiträge: 470
Registriert: 17. Mär 2010, 14:50
Wohnort: Bremerhaven
OS, Lazarus, FPC: Linux Mint 18.2 - Lazarus 1.9 - FPC 3.0.2 -Win8.1 & XE7Pro | 
CPU-Target: 64Bit
Nach oben

Beitragvon Mathias » 13. Jul 2017, 17:21 Re: Laz1.9 unter Mint 18.2 und Crosscompiling

Aber, ich möchte natürlich auch gerne wissen, warum es auf dem einem System funktioniert und auf dem anderen nicht.

Dies ist schon irgendwie merkwürdig, jede Trunk ist etwas anders.
Unter Windows hatte ich es nicht mal ein einfaches "make all" geschafft.

Sollte ich vielleicht auch Anfangen zu nutzen.

Was ich noch sagen muss, vor etwa einem 1/2 Jahr hatte dies schon mal probiert, aber ohne Erfolg, aber unterdessen scheint fpcupdeluxe erwachsen zu werden.
Mit Lazarus sehe ich gün
Mit Java und C/C++ sehe ich rot
Mathias
 
Beiträge: 3193
Registriert: 2. Jan 2014, 17:21
Wohnort: Schweiz
OS, Lazarus, FPC: Linux (die neusten Trunc) | 
CPU-Target: 64Bit
Nach oben

Beitragvon kralle » 14. Jul 2017, 10:49 Re: [gelöst] Laz1.9 unter Mint 18.2 und Crosscompiling

Moin,

so jetzt läuft es auch auf dem Notebook.
Ich habe nur ein paar Sachen meiner Anleitung überarbeiten müssen.
Für den den es interessiert lege ich die aktuelle Anleitung bei.

Gruß Heiko
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Linux Mint 18.2 und Lazarus 1.9 (FPC-Version: 3.0.2)
Windows 8.1 Pro Lazarus 1.6 + Delphi XE7SP1
kralle
 
Beiträge: 470
Registriert: 17. Mär 2010, 14:50
Wohnort: Bremerhaven
OS, Lazarus, FPC: Linux Mint 18.2 - Lazarus 1.9 - FPC 3.0.2 -Win8.1 & XE7Pro | 
CPU-Target: 64Bit
Nach oben

Beitragvon Mathias » 14. Jul 2017, 16:46 Re: [gelöst] Laz1.9 unter Mint 18.2 und Crosscompiling

In der vorherigen Anleitung (unter Linux Mint 17.3) gab es noch die Möglichkeit in einem
64-Bit Linux eine 32-Bit Linux-Anwendung zu erstellen.
Das ist durch Änderungen seitens Linux Mint ab Version 18.1 nicht mehr möglich.


FPCUPdeluxe erzeugt immerhin ein 32Bit FPC
Code: Alles auswählen
Crosscompiler for i386-win32 found !
Crosscompiler for i386-linux found !
Crosscompiler for arm-linux found !

Wen ich anschliessend mit Lazarus eine 32Bit Anwendung kompilieren will, bricht er beim Linker ab.

Code: Alles auswählen
Hint: (11030) Start of reading config file /home/tux/fpcupdeluxe/fpc/bin/x86_64-linux/fpc.cfg
Hint: (11031) End of reading config file /home/tux/fpcupdeluxe/fpc/bin/x86_64-linux/fpc.cfg
Free Pascal Compiler version 3.1.1-r20:36723 [2017/07/14] for i386
Copyright (c) 1993-2017 by Florian Klaempfl and others
(1002) Target OS: Linux for i386
(3104) Compiling project1.pas
(9022) Compiling resource /n4800/windows_test/lib/i386-linux/project1.or
(9015) Linking project1
/home/tux/fpcupdeluxe/fpc/units/i386-linux/rtl/si_c21.o: In function `SI_C21_$$__FPC_LIBC21_START':
si_c21.pp:(.text.n_si_c21_$$__fpc_libc21_start+0x27): undefined reference to `__libc_csu_fini'
si_c21.pp:(.text.n_si_c21_$$__fpc_libc21_start+0x2c): undefined reference to `__libc_csu_init'
/n4800/windows_test/project1.pas(20,1) Error: (9013) Error while linking
/n4800/windows_test/project1.pas(20,1) Fatal: (10026) There were 1 errors compiling module, stopping
Fatal: (1018) Compilation aborted
Error: /home/tux/fpcupdeluxe/fpc/bin/x86_64-linux/ppcross386 returned an error exitcode

Vielleicht hilft dir diese Meldung weiter.
Mit Lazarus sehe ich gün
Mit Java und C/C++ sehe ich rot
Mathias
 
Beiträge: 3193
Registriert: 2. Jan 2014, 17:21
Wohnort: Schweiz
OS, Lazarus, FPC: Linux (die neusten Trunc) | 
CPU-Target: 64Bit
Nach oben

Beitragvon kralle » 14. Jul 2017, 16:51 Re: [gelöst] Laz1.9 unter Mint 18.2 und Crosscompiling

Moin,

Du willst eine 32-Bit-Anwendung erstellen - richtig?
Und warum liest Du dann die 64-Bit Konfiguration ein?
Hint: (11030) Start of reading config file /home/tux/fpcupdeluxe/fpc/bin/x86_64-linux/fpc.cfg
Hint: (11031) End of reading config file /home/tux/fpcupdeluxe/fpc/bin/x86_64-linux/fpc.cfg


Gruß Heiko
Linux Mint 18.2 und Lazarus 1.9 (FPC-Version: 3.0.2)
Windows 8.1 Pro Lazarus 1.6 + Delphi XE7SP1
kralle
 
Beiträge: 470
Registriert: 17. Mär 2010, 14:50
Wohnort: Bremerhaven
OS, Lazarus, FPC: Linux Mint 18.2 - Lazarus 1.9 - FPC 3.0.2 -Win8.1 & XE7Pro | 
CPU-Target: 64Bit
Nach oben

Beitragvon Mathias » 14. Jul 2017, 17:04 Re: [gelöst] Laz1.9 unter Mint 18.2 und Crosscompiling

Du willst eine 32-Bit-Anwendung erstellen - richtig?
Und warum liest Du dann die 64-Bit Konfiguration ein?

An der fpc.cfg habe ich selbst nichts geändert.
Linux64/Win32/Win64 und ARM laufen.
Mit Lazarus sehe ich gün
Mit Java und C/C++ sehe ich rot
Mathias
 
Beiträge: 3193
Registriert: 2. Jan 2014, 17:21
Wohnort: Schweiz
OS, Lazarus, FPC: Linux (die neusten Trunc) | 
CPU-Target: 64Bit
Nach oben

Beitragvon kralle » 14. Jul 2017, 17:13 Re: [gelöst] Laz1.9 unter Mint 18.2 und Crosscompiling

Ja, aber auch in der letzte Zeile der Fehlermeldung
Error: /home/tux/fpcupdeluxe/fpc/bin/x86_64-linux/ppcross386 returned an error exitcode

steht das im 64-Bit Verzeichnis etwas ausgeführt werden soll.
Obwohl "ppcross386" sollte richtig sein.

Irgendwie habe ich das Gefühl, das dort bei der 32-Bit-Erzeugung etwas vermischt wird?

Müsste ich mich mal näher mit beschäftigen. Jetzt nervt mich erstmal FlameRobin :cry:

Gruß Heiko
Linux Mint 18.2 und Lazarus 1.9 (FPC-Version: 3.0.2)
Windows 8.1 Pro Lazarus 1.6 + Delphi XE7SP1
kralle
 
Beiträge: 470
Registriert: 17. Mär 2010, 14:50
Wohnort: Bremerhaven
OS, Lazarus, FPC: Linux Mint 18.2 - Lazarus 1.9 - FPC 3.0.2 -Win8.1 & XE7Pro | 
CPU-Target: 64Bit
Nach oben

Beitragvon Mathias » 14. Jul 2017, 17:42 Re: [gelöst] Laz1.9 unter Mint 18.2 und Crosscompiling

Jetzt nervt mich erstmal FlameRobin

Was ist dies wieder für eine Sprache ? :roll:
Schon wieder was neues. :roll:

Obwohl "ppcross386" sollte richtig sein.

Ist dieser Compiler für Win32 oder Linux32 ?
Mit Lazarus sehe ich gün
Mit Java und C/C++ sehe ich rot
Mathias
 
Beiträge: 3193
Registriert: 2. Jan 2014, 17:21
Wohnort: Schweiz
OS, Lazarus, FPC: Linux (die neusten Trunc) | 
CPU-Target: 64Bit
Nach oben

Beitragvon kralle » 14. Jul 2017, 18:16 Re: [gelöst] Laz1.9 unter Mint 18.2 und Crosscompiling

Moin,

Mathias hat geschrieben:
Jetzt nervt mich erstmal FlameRobin

Was ist dies wieder für eine Sprache ? :roll:

Datenbankverwaltungstool

Obwohl "ppcross386" sollte richtig sein.

Ist dieser Compiler für Win32 oder Linux32 ?[/quote]

Hmm, habe ich bis jetzt nicht rausfinden können.

Gruß Heiko
Linux Mint 18.2 und Lazarus 1.9 (FPC-Version: 3.0.2)
Windows 8.1 Pro Lazarus 1.6 + Delphi XE7SP1
kralle
 
Beiträge: 470
Registriert: 17. Mär 2010, 14:50
Wohnort: Bremerhaven
OS, Lazarus, FPC: Linux Mint 18.2 - Lazarus 1.9 - FPC 3.0.2 -Win8.1 & XE7Pro | 
CPU-Target: 64Bit
Nach oben

Beitragvon Mathias » 15. Jul 2017, 16:57 Re: [gelöst] Laz1.9 unter Mint 18.2 und Crosscompiling

Wenn man eine Win32 / Win64-Anwendung einfach mittels F9 im Debug-Modus startet,
erhält man nach dem schliessen der Anwendung folgende Meldung:
Einfach auf „Halt“ klicken und Lazarus läuft normal weiter.
Vielleicht hat ja jemand eine Lösung für dieses kleine Problem und teilt sie mir mit.

Ich habe eine gefunden, auch wen sie nicht perfekt ist.
Werkzeuge/Einstellungen../Debugger/Allgemein/Debuggerty und -pfad auf (none)

Nur dann ist der Debugger auch für Linux-Programme weg.
Mit Lazarus sehe ich gün
Mit Java und C/C++ sehe ich rot
Mathias
 
Beiträge: 3193
Registriert: 2. Jan 2014, 17:21
Wohnort: Schweiz
OS, Lazarus, FPC: Linux (die neusten Trunc) | 
CPU-Target: 64Bit
Nach oben

Beitragvon kralle » 16. Jul 2017, 07:49 Re: [gelöst] Laz1.9 unter Mint 18.2 und Crosscompiling

Moin,

Mathias hat geschrieben:Ich habe eine gefunden, auch wen sie nicht perfekt ist.
Werkzeuge/Einstellungen../Debugger/Allgemein/Debuggerty und -pfad auf (none)

Nur dann ist der Debugger auch für Linux-Programme weg.

Nee, das lasse ich lieber, sonst sucht man sich wieder Tod, weil keine Debug-Infos kommen.
Leider gibt es in den Erstell-Modi, keinen entsprechenden Punkt.

Dann muß das erstmal so bleiben.

Gruß Heiko
Linux Mint 18.2 und Lazarus 1.9 (FPC-Version: 3.0.2)
Windows 8.1 Pro Lazarus 1.6 + Delphi XE7SP1
kralle
 
Beiträge: 470
Registriert: 17. Mär 2010, 14:50
Wohnort: Bremerhaven
OS, Lazarus, FPC: Linux Mint 18.2 - Lazarus 1.9 - FPC 3.0.2 -Win8.1 & XE7Pro | 
CPU-Target: 64Bit
Nach oben

Beitragvon thosch » 16. Jul 2017, 11:27 Re: [gelöst] Laz1.9 unter Mint 18.2 und Crosscompiling

Leider braucht meine herunter geladene Linux Mint Version, deren Download wegen Bandbreitebegrenzung eine ganze Weile gedauert hat, weitere herunter zu ladende Dateien. Daher bleibe ich bei Knoppix. Habe die nicht funktionierende Lazarus 1.8.0 wieder deinstalliert und im Wine die Windows Version installiert. Die läuft. Dazu noch das fpcupdeluxe.zip Paket runter geladen, das ich demnächst intallieren werde. Voerst genügt die Windows Version von Lazarus vollkommen. Erst wenn ich ein damit entwickeltes Programm habe, für das eine Crosscompilierung lohnt, brauche ich fpcupdeluxe wirklich. Und das habe ich ja schon auf meinem Rechner.
thosch
 
Beiträge: 69
Registriert: 10. Jul 2017, 19:32

Beitragvon Mathias » 16. Jul 2017, 13:29 Re: [gelöst] Laz1.9 unter Mint 18.2 und Crosscompiling

Nee, das lasse ich lieber, sonst sucht man sich wieder Tod, weil keine Debug-Infos kommen.

Ich weis nicht wie du das machst.
Ich entwickle mit Linux, und Windows brauche ich erst zum Schluss, wen es fertig ist, oder schnell etwas testen will.

Ich ziehe in der Regel ein zweites Lazarus mit Wine/VB einer Crosscompilierung vor.
Wie du schon sagst, das Einrichten ist sehr Zeit-intensiv. Und wen man mal Lazarus abschiesst, geht das Ganze wieder von vorn los.
Mit Lazarus sehe ich gün
Mit Java und C/C++ sehe ich rot
Mathias
 
Beiträge: 3193
Registriert: 2. Jan 2014, 17:21
Wohnort: Schweiz
OS, Lazarus, FPC: Linux (die neusten Trunc) | 
CPU-Target: 64Bit
Nach oben

» Weitere Beiträge siehe nächste Seite »
Nächste

Zurück zu Linux



Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast

porpoises-institution
accuracy-worried