Wo ist mein erzeugtes Executable?

Antworten
Martin V
Beiträge: 142
Registriert: Sa 30. Jan 2010, 19:35
OS, Lazarus, FPC: Linux64, Wiindows32, MacOS, Lazarus 1.8.2
CPU-Target: xxBit

Wo ist mein erzeugtes Executable?

Beitrag von Martin V »

Mit Umstieg auf Lazarus 1.6 habe ich zwei Probleme unter MacOS:
- Die Einstellungen unter tools-options-debugger-general, debugger specific options, WarnOnTimeOut merkt er sich nicht, ich kann die Warnung nicht abschalten, ein erneutes Aufrufen des Options-Fensters und der Haken ist wieder gesetzt. Das ist nervig, weil bei jedem Debugger-Schritt dreimal ein "Timeout" Messagefenster kommt.
- noch schlimmer: Ich weiß nicht wo er das Executable hinspielt, die Einstellung Project Options - Paths - Target file name (-o) ist wirkungslos. In meinem Projektverzeichnis bleibt die alte EXE der früheren Lazarus Version stehen und bei "Run" greift die IDE auf diese alte Datei zurück.

Unter "About Compile Project" kann man sehen dass "-o" bei den Kommandozeilenparametern fehlt. Also scheint das ein Fehler der IDE zu sein. Aber auch ein Freilassen des target file name Feldes funktioniert nicht, das Executable müßte eigentlich in das Unit Verzeichnis geschrieben werden, dort ist es auch nicht. Ein "find" im Terminalfenster über die ganze Festplatte hat auch nichts gefunden.

Das sind ja doch eher krasse Probleme, vielleicht sind sie ja schon behoben. Doch den Daily build habe ich nicht mehr gefunden. Wo steckt der denn jetzt?

marcov
Beiträge: 1100
Registriert: Di 5. Aug 2008, 09:37
OS, Lazarus, FPC: Windows ,Linux,FreeBSD,Dos (L trunk FPC trunk)
CPU-Target: 32/64,PPC(+64), ARM
Wohnort: Eindhoven (Niederlande)

Re: Wo ist mein erzeugtes Executable?

Beitrag von marcov »

Es ist 5 Jahre seit ich etwas mit OS X gemacht habe, aber:

Ich glaube auf OS X ist der Default eine Erstellung eines "Bundles". Kann sein das das -o overridet.

Ein Bundle ist eine Directory Struktur mit den Binary und Metadata drin, typisch "projectname.app/". Siehe auch http://wiki.lazarus.freepascal.org/Application_Bundle

Für GUI Programme sind Bundle glaube ich notwendig um es in der FInder starten zu können.

Martin V
Beiträge: 142
Registriert: Sa 30. Jan 2010, 19:35
OS, Lazarus, FPC: Linux64, Wiindows32, MacOS, Lazarus 1.8.2
CPU-Target: xxBit

Re: Wo ist mein erzeugtes Executable?

Beitrag von Martin V »

Nein, im Bundle myapp.app ist nur ein Link, der auf myapp (Executable) verweist. Das ist das Standardprozedere bei MacOS und Lazarus. Und das Executable wird eben woanders hingeschrieben, ich weiß nicht wo.

Inzwischen habe ich auch noch die -o Option als custom options eingetragen, selbst das hat keine Wirkung (obwohl laut About Compile Project der Parameter übergeben wird).

marcov
Beiträge: 1100
Registriert: Di 5. Aug 2008, 09:37
OS, Lazarus, FPC: Windows ,Linux,FreeBSD,Dos (L trunk FPC trunk)
CPU-Target: 32/64,PPC(+64), ARM
Wohnort: Eindhoven (Niederlande)

Re: Wo ist mein erzeugtes Executable?

Beitrag von marcov »

Vielleicht fehlt Linking denn ganz? Anders keine Ahnung, ich habe früher Mac genutzt, aber nicht mehr.

Martin V
Beiträge: 142
Registriert: Sa 30. Jan 2010, 19:35
OS, Lazarus, FPC: Linux64, Wiindows32, MacOS, Lazarus 1.8.2
CPU-Target: xxBit

Re: Wo ist mein erzeugtes Executable?

Beitrag von Martin V »

Ja, es scheint das Linken komplett zu fehlen. Deshalb konnte ich auch gar kein Executable finden. Ich habe im Message-Fenster (über das Kontextmenü) alle Messages angeschaltet, beim Windows-Rechner schreibt er: "verbose: linking myapp.exe", bei MacOS fehlt die entsprechende Zeile. Wie kann ich das Linking wieder aktivieren? (Bis Lazarus 1.4 hatte ich keine Probleme.) Er schreibt auch keine Fehlermeldung im Sinne von "could not link" oder ähnlich.

Martin V
Beiträge: 142
Registriert: Sa 30. Jan 2010, 19:35
OS, Lazarus, FPC: Linux64, Wiindows32, MacOS, Lazarus 1.8.2
CPU-Target: xxBit

Re: Wo ist mein erzeugtes Executable?

Beitrag von Martin V »

Da das Problem ein anderes ist, starte ich einen neuen Thread unter der Rubrik "Benutzung der IDE".
http://www.lazarusforum.de/viewtopic.php?f=5&t=9628

Antworten