Einzelnen Beitrag anzeigen

Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.453 Beiträge
 
Delphi 12 Athens
 
#17

AW: Bibliothek- und Suchpfade

  Alt 27. Aug 2024, 11:57
Das verwirrt mich gerade.
Bleiben wir bei der deutschen Version.
Gerade bei der Hilfe trägt das aber häufig erst recht zur Verwirrung bei.

Globale Einstellung - über das Menü: Tools/Optionen. In diesem Dialog bei "Sprache/Delphi" gibt es u.a. "Bibliothek".
Für die ausgewählte Plattform Windows 32 Bit habe ich hier u.a. den Bibliothekspfad und den Suchpfad.

Und du meinst, alles, was ich jetzt in Suchpfad eingetragen habe, sollte ich in Bibliothekspfad verlegen?
Exakt!

In der Hilfe und Wiki steht aber zum "Suchpfad":
Da steht aber auch Quelltext-Browser und nicht Compiler.

Beispiel: In deinem Quelltext machst du einen Ctrl-Click in der uses-Anweisung auf System.Classes und - wenn nicht andere Widrigkeiten dazwischen funken - landest du in der entsprechenden Source-Unit. Der Compiler wird aber weiterhin die entsprechenden DCU-Dateien aus dem passenden lib-Verzeichnis nehmen, da er die System.Classes.pas nicht finden kann (soll er auch nicht).

Also was im Source-Editor (Quelltext-Browser) für die Navigation erreichbar sein soll, gehört unter Tools/Optionen/Sprache/Delphi/Bibliothek in den Suchpfad, während der Compiler nur das sieht, was im Bibliothekspfad steht. Natürlich wertet der Quelltext-Browser auch den Bibliothekspfad aus, wenn dort auch pas-Dateien zu finden sind. Man muss dann diese Pfade nicht auch noch im Suchpfad angeben.

Als Beispiel steht im Bibliothekspfad c:\program files (x86)\embarcadero\studio\23.0\lib\Win32\release (dort findet der Compiler System.Classes.dcu), während im Suchpfad unter anderem $BDS)source\rtl\common steht (dort findet der Quelltext-Browser System.Classes.pas).

Das sind nur die globalen Pfade für alle Projekte. In den jeweiligen Projekt-Optionen kann man zusätzlich projekt-spezifische Pfade angeben. Dort wird allerdings der Suchpfad vom Compiler (und vom Quelltext-Browser) ausgewertet. Diese unterschiedliche Verwendung des Begriffs Suchpfad hat leider schon öfter für Missverständnisse gesorgt. Im Englischen ist das halt anders.

Die Erläuterungen zu den Debugger-Pfaden spare ich mir erstmal für später auf. Ich will die Verwirrung ja nicht zu groß werden lassen.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat