Lazaruspackageintf nicht gefunden [gelöst]

Rund um die LCL und andere Komponenten
Antworten
multiplatform-coder
Beiträge: 59
Registriert: Do 20. Apr 2023, 18:25

Lazaruspackageintf nicht gefunden [gelöst]

Beitrag von multiplatform-coder »

Hallo, In einer Formularanwendung erhalte ich die folgende Compolermeldung:

lazutils.pas(23,25) Fatal: Kann LazarusPackageIntf nicht finden verwendet von LazUtils, inkompatible ppu=C:\lazarus\packager\units\i386-win32\lazaruspackageintf.ppu, Package FCL

Was muss ich hier tun? den Pfad der Unit in "Projektrinstellungen\Pfade" setzen genügt nicht.
Zuletzt geändert von multiplatform-coder am Sa 26. Apr 2025, 09:18, insgesamt 1-mal geändert.

Sieben
Beiträge: 289
Registriert: Mo 24. Aug 2020, 14:16
OS, Lazarus, FPC: Ubuntu Xenial 32, Lazarus 2.2.0, FPC 3.2.2
CPU-Target: i386

Re: Lazaruspackageintf nicht gefunden

Beitrag von Sieben »

Ich weiß nicht, was da los ist, und ich weiß auch nicht, welchen Pfad du da gesetzt hast. Aber wenn dieser Pfad in der Fehlermeldung genannt werden kann, dann scheint er der IDE bereits bekannt zu sein. Weiters steht in der Fehlermeldung, die vorgefundene .ppu sei 'inkompatibel'. Mein Vorschlag wäre, diese .ppu einfach mal zu löschen oder anderweitig unkenntlich zu machen (bspw in .ppx umbenennen) und es dann erneut zu probieren. Vielleicht war's das schon und es wird einfach eine neue, kompatible .ppu erzeugt, vielleicht gibt es auch eine neue Fehlermeldung, aus der man dann weitere Schlüsse ziehen kann.

wp_xyz
Beiträge: 5129
Registriert: Fr 8. Apr 2011, 09:01

Re: Lazaruspackageintf nicht gefunden

Beitrag von wp_xyz »

Diese Unit hat in deinem Programm eigentlich gar nichts zu suchen, sie gehört zum Lazarus Package-System. Solange du nicht 100% weißt, was du tust, solltest du keine Pfade in den Projekteinstellungen setzen, auf jeden Fall keine zu den Lazarus-Units. Das macht man in Delphi so, aber Lazarus hat Packages - du musst das Package, das die benötigte Unit zur Verfügung stellt, unter den "Benötigten Packages" im Projekt-Inspektor eintragen, dann kennt die IDe automatisch die richtigen Pfade.

Um das Problem zu beheben, könnte es reichen, das Ausgabeverzeichnis deines Projektes zu löschen (dort wo die kompilierten Units reingeschrieben werden, meist "lib"). Oder evtl musst du auch die IDE neu übersetzen ("Werkzeuge" > "Lazarus kompilieren einrichten" > "Alle aufräumen" und "Nach Kompilieren zu automatisch wechseln" > "Neu kompilieren" klicken. Der Kompiliervorgang dauert einige Zeit, anschließend startet die IDE von selbst neu.

Sieben
Beiträge: 289
Registriert: Mo 24. Aug 2020, 14:16
OS, Lazarus, FPC: Ubuntu Xenial 32, Lazarus 2.2.0, FPC 3.2.2
CPU-Target: i386

Re: Lazaruspackageintf nicht gefunden

Beitrag von Sieben »

Ich würde mich dann mal definitiv an den Vorschlägen von wp_xyz orientieren...

multiplatform-coder
Beiträge: 59
Registriert: Do 20. Apr 2023, 18:25

Re: Lazaruspackageintf nicht gefunden

Beitrag von multiplatform-coder »

Da krige ich diese Fehlermeldungen:

Kompiliere Package CodeTools 1.0.1: Abgebrochen
Kompiliere Package LCLBase 2.2.2: Exit code 1, Fehler: 2
lclproc.pas(59,13) Error: Identifier not found "TAvlTree" //Wegen dieser beiden
lclproc.pas(59,21) Error: Error in type definition //Fehler bricht der Compiliervorgang ab


Habe normale IDE compiliert. Wenn ich automatisch wähle und "aufräumen und neu compilieren, bricht der Compiliervorgang an derselben Stelle ab.
lib Prdner löschen bringt auch nix. Habe alle Aufräumoptionen durchprobiert, keine führt zum Erfolg. Was kann ich noch tun?

wp_xyz
Beiträge: 5129
Registriert: Fr 8. Apr 2011, 09:01

Re: Lazaruspackageintf nicht gefunden

Beitrag von wp_xyz »

Schwer zu sagen, was da kaputt ist. Eine Möglichkeit wäre noch, dein Profilverzeichnis zurückzusetzen: Gehe zu "Ansicht" > "IDE-Interna" > "Über die IDE", da findest du unter "Primary config directory" den Namen des Ordners, in dem deine Benutzereinstellungen gespeichert sind. Beende Lazarus und nenne diesen Ordner um, so dass die IDE ihn nicht mehr findet. Beim nächsten Start von Lazarus werden dann alle Einstellungen zurückgesetzt (d.h. alle deine eigenen Einstellunen sind weg!, auch die installierten Zusatzkomponenten). Wiederhole dann nochmals das Neuübersetzen der IDE. Falls das auch nicht hilft, würde ich einfach Lazarus neu installieren, Ich sehe, du bist auf Windows, eine Neuinstallation ist da in ein paar Minuten erledigt. Aber lösche/umbenenne vorher auch hier das Verzeichnis mit den Einstellungen.

Soner
Beiträge: 724
Registriert: Do 27. Sep 2012, 00:07
OS, Lazarus, FPC: Win10Pro-64Bit, Immer letzte Lazarus Release mit SVN-Fixes
CPU-Target: x86_64-win64
Wohnort: Hamburg

Re: Lazaruspackageintf nicht gefunden

Beitrag von Soner »

Ich habe solcher Fehler öfters gehabt, dann konnte ich nur über Konsole, kompilieren:
cd C:\lazarus\
set path=C:\lazarus\fpc\3.2.2\bin\i386-win32;%path%
make clean
make bigide

Falls einige Komponenten fehlen, dann muss man anschließend über ide nochmal kompilieren.

Wenn diese Methode auch nicht geht, dann ist dein Lazarus komplett kaputt. Ich würde es nochmal installieren, aber davor Backup von Einstellungsordner machen anschließend zurückkopieren, damit ich da weitermachen kann wo ich aufgehört habe.

multiplatform-coder
Beiträge: 59
Registriert: Do 20. Apr 2023, 18:25

Re: Lazaruspackageintf nicht gefunden

Beitrag von multiplatform-coder »

Habe ich jetzt auch gemacht @soner. Alles neu installiert! Danke! Blieb kein anderer Weg, nach Neuinstallation funktioniert alles wieder wie es soll.

Wie kann ich eigentlich ein Thema als "gelöst" markieren?

Benutzeravatar
Bullykiffer
Beiträge: 17
Registriert: Fr 9. Aug 2024, 19:44
OS, Lazarus, FPC: Windows 10 (L 3.4.0 FPC 3.2.2)
CPU-Target: Windows 64-Bit
Wohnort: Nordvorpommern

Re: Lazaruspackageintf nicht gefunden

Beitrag von Bullykiffer »

Einfach deinen ersten Post editieren und beim Betreff [gelöst] vorschreiben ;)

multiplatform-coder
Beiträge: 59
Registriert: Do 20. Apr 2023, 18:25

Re: Lazaruspackageintf nicht gefunden

Beitrag von multiplatform-coder »

Bullykiffer hat geschrieben: Fr 25. Apr 2025, 23:14 Einfach deinen ersten Post editieren und beim Betreff [gelöst] vorschreiben ;)
Ok, danke, hab ich gleich mal gemacht.

Antworten