Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Die Delphi-IDE (https://www.delphipraxis.net/62-die-delphi-ide/)
-   -   Verhindern, dass Komponentenunits mit kompiliert werden (https://www.delphipraxis.net/207635-verhindern-dass-komponentenunits-mit-kompiliert-werden.html)

norwegen60 16. Apr 2021 17:24

Verhindern, dass Komponentenunits mit kompiliert werden
 
Hallo zusammen,

ich habe gerade zwei Tage damit verbracht Delphi auf 10.4.1 upzudaten und meine Anwendungen wieder zum Laufen/Kompilieren zu bringen. Jetzt ist alles wieder kompilierbar.

Das klappt aber erst, nachdem ich bei fünf Komponenten den Source-Pfad mit in den Bibliotheks-Verzeichnis aufgenommen habe. Jetzt werden diese Komponenten aber immer mit kompiliert, was vor allem bei ImageEN ziemlich viel Zeit in Anspruch nimmt. Eine Projekt-Gruppe besteht z.B. aus 14 Einzelprojekten und wenn ich die komplett "Erzeuge" dauert das geschlagene 16 Minuten.

Wenn ich den Source nicht mit in den Bibliotheks-Pfad nehme, moniert der Compiler fehlende .res- und .dfm-Dateien

Da ich noch nicht von allen Komponenten die passenden 10.4-Versionen habe, habe ich einige selber upgedatet und manuell installiert. In dem Zug habe ich auch dafür gesorgt, dass alle in dieselbe Verzeichnistruktur ablegen.

Das klappt jetzt bei den meisten, nur eben bei fünf Komponenten gab es Probleme mit nicht gefundenen .res- und .dfm-Dateien. Versuchweise habe ich die Pfade auch in den Such- und den Debug-DCU-Pfad eingefügt, das hat aber nicht geholfen.
Die DCU der Komponenten werden alle in $(BDSCOMMONLIB)\$Platform abgelegt

Woran kann es liegen, dass meine Projekte beim Erzeugen von einigen Komponenten die .dfm/.res-Dateien brauchen?


Und vielleicht noch eine Frage: Gibt es eine Möglichkeit, das Ausgabe-Verzeichnis eine Projekt-Gruppe auf einmal auf einen einheitlichen Pfad zu setzen. Ich bin in jedes Projekt einzeln und habe geändert.

Grüße und Danke
Gerd

Uwe Raabe 16. Apr 2021 17:57

AW: Verhindern, dass Komponentenunits mit kompiliert werden
 
Zitat:

Zitat von norwegen60 (Beitrag 1487281)
Woran kann es liegen, dass meine Projekte beim Erzeugen von einigen Komponenten die .dfm/.res-Dateien brauchen?

Wenn du die Sourcen nicht im Suchpfad haben willst, musst du diese Dateien mit in das dcu-Verzeichnis kopieren.


Zitat:

Zitat von norwegen60 (Beitrag 1487281)
Gibt es eine Möglichkeit, das Ausgabe-Verzeichnis eine Projekt-Gruppe auf einmal auf einen einheitlichen Pfad zu setzen. Ich bin in jedes Projekt einzeln und habe geändert.

Du kannst eine Optionsgruppe erstellen und in jedem Projekt einbinden. Dann brauchst du den Pfad nur in der Optionsgruppe ändern. Das ist aber nur dann wirklich sinnvoll, wenn der Pfad nicht eh schon konstant bleibt.

norwegen60 16. Apr 2021 19:48

AW: Verhindern, dass Komponentenunits mit kompiliert werden
 
Danke für das schnelle Feedback

Zitat:

Zitat von Uwe Raabe (Beitrag 1487282)
Wenn du die Sourcen nicht im Suchpfad haben willst, musst du diese Dateien mit in das dcu-Verzeichnis kopieren.

Bei den .res habe ich das auch schon teilweise gemacht. Ich verstehe aber nicht warum manche Komponenten auch die dfm brauchen.

Die Optionsgruppen schau ich mir mal an. Aber das ist NiceToHave da sich die Pfade eigentlich nicht mehr ändern sollen.

Uwe Raabe 16. Apr 2021 21:30

AW: Verhindern, dass Komponentenunits mit kompiliert werden
 
Die DFM/RES werden als Resourcen eingelinkt und sind nicht in den DCUs enthalten.

norwegen60 16. Apr 2021 22:20

AW: Verhindern, dass Komponentenunits mit kompiliert werden
 
OK, habe die dfm und res des ImegeEN kopiert und jetzt dauert die Kompilierung der Projketgruppe unter 1 Minute.
Dass die Komponenten die DFM im DCU-Verzeichnis brauchen war mir nicht bewusst. Muss mal in ner VM schauen, wie die Original-Installation von ImageEN das macht.
Das Kopieren der DFM missfällt mir sehr.


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:48 Uhr.

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