Delphi XE2: Fehler beim Verwenden von dcc32.exe zum Kompilieren eines einfachen Programms

8

Nach der Installation von Delphi XE2 versuche ich den Befehlszeilen-Compiler dcc32.exe, um ein einfaches Programm zu kompilieren:

%Vor%

Der Befehlszeilencompiler zeigt mir einen Fehler an:

  

c: & gt; dcc32.exe test.dpr
      Embarcadero Delphi für Win32-Compiler-Version 23.0       Copyright (c) 1983,2011 Embarcadero Technologies, Inc.
      test.dpr (3) Fatal: F1026 Datei nicht gefunden: 'SysUtils.dcu'

Dies passiert Delphi XE nicht.

    
Chau Chee Yang 07.09.2011, 07:33
quelle

4 Antworten

28

Wenn Sie nur die Befehlszeile (ohne dcc32.cfg) verwenden möchten, ist der Befehlszeilenparameter, den Sie suchen, -NS, um die zu durchsuchenden Namespaces anzugeben ...

Sie hätten also so etwas:

%Vor%

Dadurch sollte der Compiler nach Einheiten in den Namespaces System und VCL suchen (VCL hinzugefügt, um anzuzeigen, wie mehrere Namespaces angehängt werden).

Diese Informationen wurden in den Embarcadero Diskussionsforen gefunden. Ich habe noch kein XE2, also konnte ich es nicht testen.

    
Nat 07.09.2011, 08:16
quelle
13

Aufgrund der neuen Namespaces in RTL und VCL müssen Sie dem Compiler einen zusätzlichen Kommandozeilenparameter angeben. Versuchen Sie "-NSSystem; System.Win; WinAPI; Vcl; Vcl.Imaging; Daten" und fügen Sie bei Bedarf weitere Namespaces hinzu.

    
Uwe Raabe 07.09.2011 08:10
quelle
8

Ich weiß, dass es nicht die Antwort auf deine direkte Frage ist (Uwe und Nat haben das gedeckt), aber du wärest viel besser dran mit msbuild zu bauen. Auf diese Weise werden alle Einstellungen in Ihrer .dproj-Datei übernommen.

Der Build-Befehl sollte wie folgt aussehen:

%Vor%

Wenn Sie dies aus einem Batch-Skript erstellen, müssen Sie sicherstellen, dass es das richtige msbuild sehen kann. Mach es so:

%Vor%     
David Heffernan 07.09.2011 08:05
quelle
-1

Wenn Sie einen Hewlett Packard PC oder Laptop verwenden, müssen Sie wahrscheinlich die Umgebungseinstellung "Plattform" (in Windows) entfernen. Das vorkonfigurierte (werkseitige) HP Windows7 hat (aus mir unbekannten Gründen) eine Umgebungsvariable Platform = AnyCPU. Dies betrifft Delphi XE2. Ich habe diese Diskussion letzte Nacht gefunden, was mir geholfen hat: Ссылка Ohne diesen Fix konnte ich nichts zusammenstellen. Es würde auf VCL und FireMonkey ersticken, war egal, wenn ich 64 oder 32-Bit anvisierte.

    
Chris Thornton 07.09.2011 12:20
quelle

Tags und Links