Pascal-Units in eigene Units nicht gefunden

Rund um die LCL und andere Komponenten
Antworten
aro
Beiträge: 130
Registriert: Di 26. Jul 2011, 19:58
OS, Lazarus, FPC: Deepin 20.2; Lazarus 2.0.0 + dfsg-2
CPU-Target: 64Bit

Pascal-Units in eigene Units nicht gefunden

Beitrag von aro »

Hallo,

ich kenne mich sehr gut mit Delphi aus, und wollte zu Lazarus wechseln.

Der Editor begeistert mich.

Ich habe sehr viele eigene Komponenten in Delphi geschrieben, die ich jetzt importieren muß.

Wenn ich in ein Formular eine Komponente einfüge wird z.B die Unit graphics unter uses eingefügt und alles klappt.

Wenn ich aber neue Packages erzeuge und dort eine neue Unit einfüge, dann wird die gleiche Unit die im Formular normal gefunden wird unter uses nicht gefunden.

Unter Delphi gibt es da keine Probleme. Was muss ich hier anders machen?

Socke
Lazarusforum e. V.
Beiträge: 3178
Registriert: Di 22. Jul 2008, 19:27
OS, Lazarus, FPC: Lazarus: SVN; FPC: svn; Win 10/Linux/Raspbian/openSUSE
CPU-Target: 32bit x86 armhf
Wohnort: Köln
Kontaktdaten:

Re: Pascal-Units in eigene Units nicht gefunden

Beitrag von Socke »

aro hat geschrieben:Was muss ich hier anders machen?
Unter Lazarus solltest du deine Units nicht doppelt verwalten — also entweder nur im Projekt oder nur im Package.

Kopiere also die fragliche Unit in das Verzeichnis deines Packages, füge sie dann dem Package hinzu. Jetzt musst du noch das Package als Abhängigkeit deinem Projekt hinzufügen. Das geht über den Projekt-Inspektor, den du im Menü "Projekt->Projekt-Inspektor..." findest. Nach einem Klick auf den "+"-Button kannst du im Reiter "Neue Anforderung" dein Package eintragen und die Unit wird dann auch in deinem Projekt gefunden.
MfG Socke
Ein Gedicht braucht keinen Reim//Ich pack’ hier trotzdem einen rein

aro
Beiträge: 130
Registriert: Di 26. Jul 2011, 19:58
OS, Lazarus, FPC: Deepin 20.2; Lazarus 2.0.0 + dfsg-2
CPU-Target: 64Bit

Re: Pascal-Units in eigene Units nicht gefunden

Beitrag von aro »

Danke, aber das bringt mich nicht wirklich weiter.


Ich habe selbstverständlich ein neues Verzeichnis angelegt angelegt und in dieses Verzeichnis sowohl das neu erzeugte Package als auch die Unit gespeichert, die ich in dem Packege neu erzeugt habe. Dann habe ich das Package compiliert und die Welt war noch in Ordnung.

Aber als ich dann die Zeile

uses classes, Messages, Graphics;

eingefügt habe, da ich eine Const vom type TColor benötigte, ging nichts mehr.

beim compilieren kam immer die Fehlermeldung Unit Graphics wird nicht gefunden.

Wenn ich unter Lazarus arbeiten arbeiten will, möchte ich auf meine eigenen Komponenten auf gar keinen Fall verzichten.

Wenn ich z.B. die Komponente TEdit betrachte, die war unter Delphi schon die blanke Katastrophe. Wenn man da einfach mal im Schrittbetrieb verfolgt, wie da absolut sinnlos durch die Gegend "gehüpft" wird, bekommt man den Eindruck, das der Compiler und die Komponenten einfach nicht aus der selben Quelle stammen können.

Bei Lazarus konnte man den Quellcode sicher nicht einfach 1:1 abschreiben. Ich kann jetzt noch nicht abschätzen ob bestimmte Aktionen notwendig sind, damit das ganze Programm auch unter Linux läuft. Aber für WINDOWS schockt mich das Ergebnis sehr

Antworten