Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi DCC32 findet Dateien in relativen Pfaden nicht (https://www.delphipraxis.net/96173-dcc32-findet-dateien-relativen-pfaden-nicht.html)

anse 19. Jul 2007 19:38


DCC32 findet Dateien in relativen Pfaden nicht
 
Ich versuche gerade das Projekt HeidiSQL mitsamt aller .PAS Dateien per Kommandozeile zu kompilieren, um sowas wie automatisierte Nightly Builds anbieten zu können. Dabei stoße ich auf ein Problem: Z.B. befindet sich im Package

Code:
components\edbimage\packages\delphi11\VCLSer.dpk
dieses hier:

Delphi-Quellcode:
contains
  EDBImage in '..\..\source\EDBImage.pas';
Meine dcc32.cfg enthält u.a. das hier:
Code:
...
-B
-u"components\edbimage\source"
-i"components\edbimage\source"
...
Wenn ich dem DCC32.exe nun den Schalter -B gebe (Build all units), dann findet er die EDBImage.pas nicht, sucht dann nach einer EDBImage.dcu, die er auch nicht finden kann und bricht dann ab.

Ich habe herausgefunden daß der Grund dafür der relative Pfad-Verweis in der VCLSer.dpk ist. Wenn ich dort testweise einen vollen Pfad mit Laufwerksbuchstaben angebe, wird die EDBImage.pas gefunden.

Die IDE kompiliert alles ohne Probleme.

Es scheint auch keinen Schalter für DCC32 zu geben, dem man eine Art "Base-Directory" geben kann, von dem er also die relativen Pfade "berechnen" kann.

Was tun?

anse 19. Jul 2007 21:12

Re: DCC32 findet Dateien in relativen Pfaden nicht
 
Das gröbste Problem ist gelöst:

Da ich eh schon eine Batch-Datei für die Compiler-Aufrufe und die ganzen Parameter habe, mache ich vor jedem Aufruf des Compilers ein "cd components/bla/packages/delphi11/" . Dann findet er die relativen Pfade auch. Und: ich brauche noch nicht mal die source-Verzeichnisse über den -U Schalter angeben.

Habe mich dann jedenfalls dafür entschieden *alle* Parameter in die Batch-Datei zu schreiben, ansonsten bräuchte ich eine dcc32.cfg in jedem Arbeitsverzeichnis wo die packages liegen.

Jetzt findet nur SynEdit das "vcl"-package nicht... hmm

Robert Marquardt 20. Jul 2007 05:41

Re: DCC32 findet Dateien in relativen Pfaden nicht
 
Wie fast immer bietet die JVCL eine Loesung (genau eben ein cd in die passende Directory). jvcl\examples\CompileExamples.bat und das zugehoerige makefile.mak erledigen die Uebersetzung aller Beispiele. Die .dof files der einzelnen Beispiele sind generiert und enthalten nur relative Pfade.


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:25 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