Lazarus-Crash nach Neu-Kompilierung ([ClientApplication lclSyncCheck:]: unrecognized selector)

Antworten
MartinBln
Beiträge: 10
Registriert: Mi 5. Aug 2020, 07:51
OS, Lazarus, FPC: macOS (L 2.1.0 FPC 3.2.0)
CPU-Target: 64Bit
Wohnort: Berlin

Lazarus-Crash nach Neu-Kompilierung ([ClientApplication lclSyncCheck:]: unrecognized selector)

Beitrag von MartinBln »

Hallo,

ich bin relativ neu was Lazarus angeht.

Folgendes Problem: um ein Package (fpCEF3) einzubinden, muss ich nach dem Kompilieren des Packages ja Lazarus neu kompilieren lassen um das Package einzubinden.

Sowohl das Kompilieren des Packages (Package -> Compile) als auch das Neu-Kompilieren von Lazarus (Package -> Use -> Install) klappt grundsätzlich.

Aber: nach dem Neu-Kompilieren von Lazarus crasht Lazarus wenn ich die IDE anschliessend wieder starten will.

Crash-Ursache: *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[ClientApplication lclSyncCheck:]: unrecognized selector sent to instance 0x600000123f20'

Das Gleiche passiert auch, wenn ich kein neues Package einbinde sondern nur unter "Configure Build Lazarus" die IDE neu kompiliere.
Ich habe dort auch mal "Target OS" und "Target CPU" explizit angegeben - mit gleichem Ergebnis.

Ich sitze an diesem Problem schon Wochen, habe sowohl dieses als auch das englisch sprachige Forum durchsucht, über die Web-Suche nach ähnlichen Problemen gesucht - habe aber leider nichts ähnliches gefunden.

Ich habe in dieser Zeit Lazarus und FPC mehrfach neu installiert / aktualisiert. Leider ohne positives Ergebnis.

Das Neu-Kompilieren von Lazarus ist doch- wenn ich das richtig sehe - eine Standard-Sache, oder?

macOS 10.13.6 (High Sierra)
Lazarus 2.0.10, FPC 3.2.0
Package CEF3 V3.3029.1

Ich würde mich sehr freuen über einen Tip...

Liebe Grüsse & vielen Dank im voraus
Martin
Dateianhänge
Lazarus Crash.rtf
(50.3 KiB) 9-mal heruntergeladen
Configure Build Lazarus.png
Configure Build Lazarus.png (291.5 KiB) 930 mal betrachtet

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

Re: Lazarus-Crash nach Neu-Kompilierung ([ClientApplication lclSyncCheck:]: unrecognized selector)

Beitrag von af0815 »

MartinBln hat geschrieben:
Mi 5. Aug 2020, 08:31
Das Neu-Kompilieren von Lazarus ist doch- wenn ich das richtig sehe - eine Standard-Sache, oder?

macOS 10.13.6 (High Sierra)
Lazarus 2.0.10, FPC 3.2.0
Package CEF3 V3.3029.1
Grundlegend ist das Neu-Kompilieren eine Standardsache, ALLERDINGS ist macOS nicht unbedingt unter Standard einzureihen.

Grundlegende Frage:
a) Gibt es mehr Informationen, wenn du Lazarus von einer Commandline aus startest ?
b) Gibt es mit dem Logging enabled mehr Infos -> option in Kommandozeile anhängen : --debug-log=<file>
c) Geht die (neue, nackte) Lazarusinstallation ohne zusätzliche Pakete zum kompilieren ?
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

Benutzeravatar
theo
Beiträge: 8462
Registriert: Mo 11. Sep 2006, 19:01

Re: Lazarus-Crash nach Neu-Kompilierung ([ClientApplication lclSyncCheck:]: unrecognized selector)

Beitrag von theo »

lclSyncCheck ist wohl Cocoa spezifisch: https://wiki.lazarus.freepascal.org/Coc ... endMessage
Ich würde da gleich mal im Bugtracker
https://bugs.freepascal.org/
oder in der Mailing List fragen
https://lists.lazarus-ide.org/listinfo/lazarus

MartinBln
Beiträge: 10
Registriert: Mi 5. Aug 2020, 07:51
OS, Lazarus, FPC: macOS (L 2.1.0 FPC 3.2.0)
CPU-Target: 64Bit
Wohnort: Berlin

Re: Lazarus-Crash nach Neu-Kompilierung ([ClientApplication lclSyncCheck:]: unrecognized selector)

Beitrag von MartinBln »

Vielen Dank für die schnellen Antworten.

Antwort zu af0815:
a.) Startet, aber ohne GUI. Mehr Information sehe ich nicht.
b.) In dem LogFile steht sehr wenig, oder? Ich habe es aber angehängt.
c.) Nein. Auch ohne zusätzliche Pakete crasht die Neu-Kompilierung.

Antwort zu theo:
Bug-Report ist erstellt: https://bugs.freepascal.org/view.php?id=37487
Dateianhänge
Lazarus_debug_log.txt
(256 Bytes) 12-mal heruntergeladen

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

Re: Lazarus-Crash nach Neu-Kompilierung ([ClientApplication lclSyncCheck:]: unrecognized selector)

Beitrag von af0815 »

MartinBln hat geschrieben:
Mi 5. Aug 2020, 11:25
c.) Nein. Auch ohne zusätzliche Pakete crasht die Neu-Kompilierung.

Antwort zu theo:
Bug-Report ist erstellt: https://bugs.freepascal.org/view.php?id=37487
Nachdem c) auch crashed und ich es nicht im Bugreport gefunden habe stellt sich die Frage, woher ist die Installation ?

Ich glaube du bist mit der Mailingliste (ev. im englischen Forum) besser bedient, da dort sich mehr Mac Benutzer befinden. Zumindest gibt es dort immer wieder Diskussionen zu den angebissenen Obst Produkten.
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

Winni
Beiträge: 402
Registriert: Mo 2. Mär 2009, 16:45
OS, Lazarus, FPC: Laz2.06, fpc 3.04
CPU-Target: 64Bit
Wohnort: Fast Dänemark

Re: Lazarus-Crash nach Neu-Kompilierung ([ClientApplication lclSyncCheck:]: unrecognized selector)

Beitrag von Winni »

Hi!

Im internationalen Forum gibt es ´jede Menge Mac-Beiträge, weil die derzeitige Implementierung anscheinend reichlich fehlerhaft ist.

Winni

Benutzeravatar
theo
Beiträge: 8462
Registriert: Mo 11. Sep 2006, 19:01

Re: Lazarus-Crash nach Neu-Kompilierung ([ClientApplication lclSyncCheck:]: unrecognized selector)

Beitrag von theo »

Auf den Bugreport wurde reagiert.
In Rev. 63693 gibt es eine Anpassung:
https://svn.freepascal.org/cgi-bin/view ... sion=63693

Geht es jetzt?

MartinBln
Beiträge: 10
Registriert: Mi 5. Aug 2020, 07:51
OS, Lazarus, FPC: macOS (L 2.1.0 FPC 3.2.0)
CPU-Target: 64Bit
Wohnort: Berlin

Re: Lazarus-Crash nach Neu-Kompilierung ([ClientApplication lclSyncCheck:]: unrecognized selector)

Beitrag von MartinBln »

Nochmals vielen Dank für Eure schnellen Antworten und Hilfen.

Der Tip mit dem Bug-Report hat ja super funktioniert - so schnell eine Reaktion und Lösung, ich bin begeistert.

Jetzt hätte ich nur noch die Frage wie ich an diese - für mich wichtige Änderung - herankomme.

Der direkte Download und Installation der geänderten Sourcen von https://svn.freepascal.org/cgi-bin/view ... sion=63693 hat nicht funktioniert - anschliessend lässt sich Lazarus nicht mehr kompilieren weil es anscheinend weitere Abhängigkeiten gibt.

https://sourceforge.net/projects/lazaru ... %202.0.10/ ist natürlich noch nicht aktualisiert - das wird wahrsch. noch etwas dauern. Richtig?

Alternativ könnte ich auch das auf https://lists.lazarus-ide.org/pipermail ... 37082.html beschriebene Setup-Script verwenden - würde das diese Änderung beinhalten? M.E. lädt das die aktuellen Sourcen - jedenfalls sieht die IDE wesentlich "moderner" (mehr Mac-like) aus.

Ich habe noch viel zu lernen...


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

Re: Lazarus-Crash nach Neu-Kompilierung ([ClientApplication lclSyncCheck:]: unrecognized selector)

Beitrag von af0815 »

So wie ich die Kommentare im Bugreport verstanden habe, sind auch Anpassungen im CEF3 notwendig.
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

MartinBln
Beiträge: 10
Registriert: Mi 5. Aug 2020, 07:51
OS, Lazarus, FPC: macOS (L 2.1.0 FPC 3.2.0)
CPU-Target: 64Bit
Wohnort: Berlin

Re: Lazarus-Crash nach Neu-Kompilierung ([ClientApplication lclSyncCheck:]: unrecognized selector)

Beitrag von MartinBln »

Erneut vielen Dank für Eure schnellen Antworten und Hilfen.

FPC und Lazarus-Konfiguration waren ja schon von der bisherigen Installation vorhanden.

Ich habe jetzt also
1.)ein neues Verzeichnis angelegt und das ausgewählt via cd
2.)svn co http://svn.freepascal.org/svn/lazarus/trunk lazarus aufgerufen
3.)fpCEF3 in das Verzeichnis components kopiert
4.)make clean all bigide aufgerufen

Die Kompilierung läuft problemlos durch. Anschliessend habe ich Lazarus gestartet - anbei der About-Screenshot (Lazarus_SVN_About).
Und als Screenshot auch die geladenen Packages (Loaded_Packages).

Was mir dabei auffällt: bei den meisten Packages steht "installed static; auto install static", aber bei CEF3 steht nur "auto install static". Bedeutet das, dass CEF3 nicht statisch installiert ist?

Wenn ich anschliessend ein Beispiel von "fpCEF3" öffne (LCLSimple), dann erhalte ich leider den Fehler "TChromium component class not found" (TChromium error).
Plus die Meldung "It is not registered via RegisterClass..." - da weiss ich gar nicht was zu tun ist.

Wie gesagt: noch viel zu lernen.

Aber Lazarus startet - und "geladene Packages" sah vorher auch so aus. Nur das Lazarus nach dem Neu-Kompilieren ja abstürzte.
Insofern ist das Thema Crash ja eigentlich jetzt erledigt - soll ich wg. dem Problem mit CEF3 ein neues Thema anlegen?
Dateianhänge
TChromium error.png
TChromium error.png (105.11 KiB) 685 mal betrachtet
Loaded_Packages.png
Loaded_Packages.png (125.15 KiB) 685 mal betrachtet
Lazarus_SVN_About.png
Lazarus_SVN_About.png (412.2 KiB) 685 mal betrachtet

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

Re: Lazarus-Crash nach Neu-Kompilierung ([ClientApplication lclSyncCheck:]: unrecognized selector)

Beitrag von af0815 »

Ich würde anders installieren.

nach den svn co einmal das make aufrufen, so wie du es gemacht hast, dann Lazarus starten und ein Hello world teste. Dann Lazarus aus Lazarus einmal clean recompilieren. Erst wenn das funktioniert, dann erst mit den externen Komponenten weitermachen.

fpCEF3 muss nicht ! in den Komponentenordner von Lazarus. Du musst nur die entsprechende Paketdatei öffnen und dort in Lazarus installieren sagen. Dann wird das Paket richtig eingebunden.

Wenn du bereits eine verkonfigurierte Version von Lazarus hast, dann solltest du die alte Konfig sichern und anschliessend löschen. Sonst schleppst du den Fehler immer mit. Da kann man dann das Lazarus Verzeichnis löschen was man will und neu auschecken, das repriduziert den Fehler nur jedesmal.

Und Komponenten werden immer über das Komponentenmenü verwaltet. Da braucht nichts in den Componentspfad von Lazarus kopiert werden.

Ich gehe davon aus, das bei dir ein paar Sachen schiefgelaufen sind und ohne Start bei Null gibt es nur Frust.


Siehe auch https://wiki.freepascal.org/Installing_Lazarus_on_macOS
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

MartinBln
Beiträge: 10
Registriert: Mi 5. Aug 2020, 07:51
OS, Lazarus, FPC: macOS (L 2.1.0 FPC 3.2.0)
CPU-Target: 64Bit
Wohnort: Berlin

Re: Lazarus-Crash nach Neu-Kompilierung ([ClientApplication lclSyncCheck:]: unrecognized selector)

Beitrag von MartinBln »

Vielen Dank für die schnelle Antwort.

Einen Schritt hatte ich vergessen zu erwähnen: zwischen Schritt 2 und 3 hatte ich die bisherige Lazarus-Installation gestartet, in den IDE-Options das Lazarus-Verzeichnis auf das neue Verzeichnis gesetzt, Lazarus beendet und das bisherige Verzeichnis gelöscht.

"Dann Lazarus aus Lazarus einmal clean recompilieren..." war der hilfreiche Hinweis.

Also
5.) Lazarus gestartet
6.) Bei fpCEF3 in cef3cocoa.pas "Uses" ergänzt um "CocoaInt", und wie im Bug-Report empfohlen "ClientApplication = objcclass(TCocoaApplication, CefAppProtocol)" angegeben.
7.) Die Lazarus IDE in Lazarus neu kompiliert
8.) In "Info.plist" den Key "NSPrincipleClass" mit dem Wert "ClientApplication" hinzugefügt.

Jetzt lässt sich Lazarus ohne Crash starten und bei dem Package "CEF3" wird jetzt auch "installed static, auto install" angezeigt.

Ebenfalls lässt sich das Beispiel "LCLSimple" öffnen ohne die bisherige Fehlermeldung.

Das hätte ich ohne Eure super Hilfe nicht hingekriegt - vielen Dank nochmals.

Leider kriege ich beim Kompilieren von LCLSimple jetzt noch die Fehlermeldung

Code: Alles auswählen

main.pas(99,1) Error: Internal error 200609171
Anbei auch noch der Screenshot...
Dateianhänge
LCLSimple_compile_error.png
(198.59 KiB) Noch nie heruntergeladen

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

Re: Lazarus-Crash nach Neu-Kompilierung ([ClientApplication lclSyncCheck:]: unrecognized selector)

Beitrag von af0815 »

https://bugs.freepascal.org/view.php?id=36250

https://www.mail-archive.com/fpc-devel@ ... 39009.html

Sieht danach aus als würdest du mit dem nicht fertig implementierten Dwarf3 Probleme haben. Laut den Infos. Ev. anderen Debugmodus verwenden.
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

MartinBln
Beiträge: 10
Registriert: Mi 5. Aug 2020, 07:51
OS, Lazarus, FPC: macOS (L 2.1.0 FPC 3.2.0)
CPU-Target: 64Bit
Wohnort: Berlin

Re: Lazarus-Crash nach Neu-Kompilierung ([ClientApplication lclSyncCheck:]: unrecognized selector)

Beitrag von MartinBln »

Vielen Dank!

Ja, das war das Problem. Ich habe auf Dwarf2 umgeschaltet und dann lässt es sich kompilieren. Immerhin...

Starten lässt sich die Beispiel-App "LCLSimple" leider jedoch trotzdem nicht - s. LCLSimple_error.

Aber das hier Anfangs beschriebene Problem ist ja erfolgreich gelöst - insofern versuche ich mal bei viewtopic.php?f=18&t=7676&start=45 Hilfe zu bekommen.

Was mich da allerdings erstaunt: der letzte Eintrag ist von 2017?
Dateianhänge
LCLSimple_error.png
LCLSimple_error.png (101.89 KiB) 588 mal betrachtet

Antworten