Delphi-PRAXiS
Seite 2 von 3     12 3      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Die Delphi-IDE (https://www.delphipraxis.net/62-die-delphi-ide/)
-   -   Bibliothek- und Suchpfade (https://www.delphipraxis.net/205409-bibliothek-und-suchpfade.html)

Uwe Raabe 26. Aug 2024 13:20

AW: Bibliothek- und Suchpfade
 
Ist der Bibliothekspfad denn auch in der verwendeten Plattform eingetragen?

SearchBot 26. Aug 2024 14:29

AW: Bibliothek- und Suchpfade
 
Ja, "Ausgewählte Plattform": Windows 32 Bit

Uwe Raabe 26. Aug 2024 14:33

AW: Bibliothek- und Suchpfade
 
In dem Fall muss die Ursache eine andere sein. In der Regel funktioniert das schon so.

SearchBot 26. Aug 2024 16:28

AW: Bibliothek- und Suchpfade
 
Liste der Anhänge anzeigen (Anzahl: 1)
Aber was könnte das sein?

Ich hab ein neues Projekt gestartet und eine Unit aus dem Suchpfad in die uses geschrieben.
Davon hab ich dann eine Screenshot-Collage erstellt - wo liegt der Fehler?

Uwe Raabe 26. Aug 2024 19:03

AW: Bibliothek- und Suchpfade
 
Bei den Bibliothekspfaden muss der Eintrag in Bibliothekspfad! In Suchpfad stehen die Pfade für den Debugger, damit man auch in die Sourcen debuggen kann, die sonst nur als DCU zur Verfügung stehen.

Leider ist das bei der Übersetzung etwas unglücklich gelöst: Im Englischen heißt das dort Browsing path, während das Deutsche Suchpfad mit dem gleichnamigen Eintrag in den Projektoptionen kollidiert, die aber jeweils unterschiedliche Bedeutung haben.

SearchBot 27. Aug 2024 09:52

AW: Bibliothek- und Suchpfade
 
Das verwirrt mich gerade.
Bleiben wir bei der deutschen Version.

Wo muss was stehen?

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?

In der Hilfe und Wiki steht aber zum "Suchpfad":
Zitat:

Gibt die Verzeichnisse an, in denen der Quelltext-Browser des Quelltext-Editors nach Unit-Dateien sucht, wenn im Suchpfad oder Quellpfad für das Projekt der gesuchte Bezeichner nicht gefunden wird. Der Quelltext-Editor sucht die Unit-Dateien für den Quelltext-Browser anhand der folgenden Reihenfolge:

Projektsuchpfad für Delphi (Projekt > Optionen > Delphi-Compiler) oder Include-Pfad für C++ (Projekt > Optionen > Verzeichnisse und Bedingungen).
Globaler Suchpfad (diese Option) für Win32-Delphi-Sprachprojekte; die mit dieser Option angegebenen Verzeichnisse werden an den Debug-Suchpfad für das Projekt angehängt. Die Debug-Suchreihenfolge für Unit-Dateien wird daher durch die folgenden Pfadeinstellungen bestimmt:
Suchpfad (diese Option).
Quelltextpfad des Projekts (das Verzeichnis, in dem das Projekt gespeichert wurde).
Aber genau das (rote Markierung im Zitat) habe ich ja mit meiner Screenshot-Collage gezeigt - und es funktioniert nicht!?

:?: Muss ich vielleicht dann zusätzlich in den Projekt-Optionen den Suchpfad mit einer Variable belegen? Welche wäre das?
:?: Oder sollte das normal aus den globalen Einstellungen "geerbt" werden?

Uwe Raabe 27. Aug 2024 10:57

AW: Bibliothek- und Suchpfade
 
Zitat:

Zitat von SearchBot (Beitrag 1540260)
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.

Zitat:

Zitat von SearchBot (Beitrag 1540260)
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!

Zitat:

Zitat von SearchBot (Beitrag 1540260)
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.

SearchBot 18. Sep 2024 08:57

AW: Bibliothek- und Suchpfade
 
Na gut ich hatte es dann hinbekommen und es fand sich alles.

Jetzt habe ich erst alles mit den Migrationstool gesichert, dann die 12.1 deinstalliert, dann die 12.2 installiert und die gesicherte Migrationsdatei wieder eingespielt - es hat eine Weile was gemacht, mit den JEDI-Zeug hatte ich stundenlang nachbessern müssen und Fastreports wollte sich zunächst garnicht installieren lassen (Tipp: Delphi als Administrator starten, dann klappt es mit Fastreports).

Nun öffne ich fröhlich mein Projekt...
:pale:
Die IDE findet meine Units nicht.
In den globalen Pfaden fehlt alles, was ich in Version 12.1 mühsam zusammengetragen habe. Wird wohl nicht vom Migrationstool gesichert :wall:
Edit: nicht alles - nur der Pfad mit meinen Standard-Units für alle Projekte.
Und ich präzisiere: im Bibliothekspfad - habs zuerst im "Suchpfad" nachgetragen (schon wieder falsch gemacht, das hat also weiterhin verwirrt) und nix gebracht - es muss im Bibliothekspfad notiert sein!
Und nach dem Speichern des Dialogs bei Tools-Optionen merkt das die IDE nicht, daß sich was geändert hat. Erst das Formular schließen und erneut öffnen, dann geht das CodeInsight nochmal durch und ist jetzt endlich zufrieden.

Oder wo werden die globalen Pfade gespeichert?
Zitat:

Zitat von himitsu (Beitrag 1473182)
In vielen Pfaden werden Variablen wie $(BDSCatalogRepository), $(BDS), $(BDSLIB) oder $(PUBLIC)\Documents\Embarcadero,
da wäre es dann egal in welcher Version ein Pfad mit sowas eingespielt wird.

Ich habe auch nicht finden können, wo die Pfadvariablen gespeichert werden!?

peterbelow 18. Sep 2024 14:21

AW: Bibliothek- und Suchpfade
 
Zitat:

Zitat von SearchBot (Beitrag 1541096)
Ich habe auch nicht finden können, wo die Pfadvariablen gespeichert werden!?

In der Registry, Computer\HKEY_CURRENT_USER\SOFTWARE\Embarcadero\BD S\23.0\Library, in den diversen subkeys. Die Standard-Makros sind wohl fest verdrahtet, selbst hinzugefügte unter Computer\HKEY_CURRENT_USER\SOFTWARE\Embarcadero\BD S\23.0\Environment Variables.

Man beachte das die Pfade projektspezifisch sind, die Registryeinträge sind der Default (aus dem Tools -> Options Dialog), in den Projektoptionen kann man sie überschreiben, landet dann im DPROJ-File.

himitsu 18. Sep 2024 15:00

AW: Bibliothek- und Suchpfade
 
Zitat:

Zitat von peterbelow (Beitrag 1541137)
Die Standard-Makros sind wohl fest verdrahtet,

über die OpenToolsAPI aus irgendwelchen DesingTimePackages (kann man auch selbst so machen ... vor allem für interactive Macros)


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:05 Uhr.
Seite 2 von 3     12 3      

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz