AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Fehler beim Compilieren mit MSBuild

Ein Thema von ADelph · begonnen am 20. Apr 2017 · letzter Beitrag vom 20. Apr 2017
Antwort Antwort
Seite 2 von 2     12   
sko1

Registriert seit: 27. Jan 2017
601 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#11

AW: Fehler beim Compilieren mit MSBuild

  Alt 20. Apr 2017, 13:20
Zum Thema cdd32 in der Batchdatei:

Ich habe vor Jahren verschiedene Programmversionen aus einem Source per Batchdatei erzeugen lassen und dabei die Befehlszeile dcc32 die im Radstudio angezeigt wird eben mehrfach angepasst kopiert per Batchdatei ausgeführt.

Der Eintrag einer einzigen Compilervariante sah in etwa so aus:

Zitat:
"c:\program files (x86)\embarcadero\rad studio\7.0\bin\dcc32.exe" -$R+ --no-config -B -Q -AWinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;Db iProcs=BDE;DbiErrs=BDE -DDEBUG;madExcept;x-Fulldebugmode;x-Logmemoryleakdetailtofile;SQLx -I"c:\program files (x86)\embarcadero\rad studio\7.0\lib\DE";"C:\Delphicomponenten\TStringal igngrid 2010";"C:\Delphicomponenten\Virtual Treeview\Source";"C:\Delphicomponenten\TCPort 4.00\source";C:\Delphicomponenten\tXLSFile;"C:\Del phicomponenten\Devicechange Komponente";"C:\Delphicomponenten\ICS Mail\Delphi\Vc32";"C:\Delphicomponenten\TEmail 2010\compon";"C:\Delphicomponenten\Overbyte V7\Delphi\Vc32";"C:\Delphicomponenten\TEmail 2010";"C:\Delphicomponenten\ICS Mail\Delphi";"C:\Delphicomponenten\Overbyte V7\Delphi";"C:\Delphicomponenten\ICS Mail\Delphi\Internet";"c:\program files (x86)\embarcadero\rad studio\7.0\lib";"C:\Users\sko\Documents\RAD Studio\7.0\Imports";"c:\program files (x86)\embarcadero\rad studio\7.0\Imports";"c:\program files (x86)\embarcadero\rad studio\7.0\Lib\Indy10";"C:\Users\Public\Documents\ RAD Studio\7.0\Dcp";"c:\program files (x86)\embarcadero\rad studio\7.0\include";"c:\program files (x86)\embarcadero\rad studio\7.0\RaveReports\Lib";C:\madCollection\madBa sic\BDS7;C:\madCollection\madDisAsm\BDS7;C:\madCol lection\madExcept\BDS7;C:\madCollection\madExcept\ ..\Plugins;C:\madCollection\madRemote\BDS7;C:\madC ollection\madKernel\BDS7;C:\madCollection\madCodeH ook\BDS7;C:\madCollection\madSecurity\BDS7;C:\madC ollection\madShell\BDS7 -LE"C:\Users\Public\Documents\RAD Studio\7.0\Bpl" -LN"C:\Users\Public\Documents\RAD Studio\7.0\Dcp" -NB"C:\Users\Public\Documents\RAD Studio\7.0\Dcp" -O"C:\Delphicomponenten\TStringaligngrid 2010";"C:\Delphicomponenten\Virtual Treeview\Source";"C:\Delphicomponenten\TCPort 4.00\source";C:\Delphicomponenten\tXLSFile;"C:\Del phicomponenten\Devicechange Komponente";"C:\Delphicomponenten\ICS Mail\Delphi\Vc32";"C:\Delphicomponenten\TEmail 2010\compon";"C:\Delphicomponenten\Overbyte V7\Delphi\Vc32";"C:\Delphicomponenten\TEmail 2010";"C:\Delphicomponenten\ICS Mail\Delphi";"C:\Delphicomponenten\Overbyte V7\Delphi";"C:\Delphicomponenten\ICS Mail\Delphi\Internet";"c:\program files (x86)\embarcadero\rad studio\7.0\lib";"C:\Users\sko\Documents\RAD Studio\7.0\Imports";"c:\program files (x86)\embarcadero\rad studio\7.0\Imports";"c:\program files (x86)\embarcadero\rad studio\7.0\Lib\Indy10";"C:\Users\Public\Documents\ RAD Studio\7.0\Dcp";"c:\program files (x86)\embarcadero\rad studio\7.0\include";"c:\program files (x86)\embarcadero\rad studio\7.0\RaveReports\Lib";C:\madCollection\madBa sic\BDS7;C:\madCollection\madDisAsm\BDS7;C:\madCol lection\madExcept\BDS7;C:\madCollection\madExcept\ ..\Plugins;C:\madCollection\madRemote\BDS7;C:\madC ollection\madKernel\BDS7;C:\madCollection\madCodeH ook\BDS7;C:\madCollection\madSecurity\BDS7;C:\madC ollection\madShell\BDS7 -R"c:\program files (x86)\embarcadero\rad studio\7.0\lib\DE";"C:\Delphicomponenten\TStringal igngrid 2010";"C:\Delphicomponenten\Virtual Treeview\Source";"C:\Delphicomponenten\TCPort 4.00\source";C:\Delphicomponenten\tXLSFile;"C:\Del phicomponenten\Devicechange Komponente";"C:\Delphicomponenten\ICS Mail\Delphi\Vc32";"C:\Delphicomponenten\TEmail 2010\compon";"C:\Delphicomponenten\Overbyte V7\Delphi\Vc32";"C:\Delphicomponenten\TEmail 2010";"C:\Delphicomponenten\ICS Mail\Delphi";"C:\Delphicomponenten\Overbyte V7\Delphi";"C:\Delphicomponenten\ICS Mail\Delphi\Internet";"c:\program files (x86)\embarcadero\rad studio\7.0\lib";"C:\Users\sko\Documents\RAD Studio\7.0\Imports";"c:\program files (x86)\embarcadero\rad studio\7.0\Imports";"c:\program files (x86)\embarcadero\rad studio\7.0\Lib\Indy10";"C:\Users\Public\Documents\ RAD Studio\7.0\Dcp";"c:\program files (x86)\embarcadero\rad studio\7.0\include";"c:\program files (x86)\embarcadero\rad studio\7.0\RaveReports\Lib";C:\madCollection\madBa sic\BDS7;C:\madCollection\madDisAsm\BDS7;C:\madCol lection\madExcept\BDS7;C:\madCollection\madExcept\ ..\Plugins;C:\madCollection\madRemote\BDS7;C:\madC ollection\madKernel\BDS7;C:\madCollection\madCodeH ook\BDS7;C:\madCollection\madSecurity\BDS7;C:\madC ollection\madShell\BDS7 -U"c:\program files (x86)\embarcadero\rad studio\7.0\lib\DE";"C:\Delphicomponenten\TStringal igngrid 2010";"C:\Delphicomponenten\Virtual Treeview\Source";"C:\Delphicomponenten\TCPort 4.00\source";C:\Delphicomponenten\tXLSFile;"C:\Del phicomponenten\Devicechange Komponente";"C:\Delphicomponenten\ICS Mail\Delphi\Vc32";"C:\Delphicomponenten\TEmail 2010\compon";"C:\Delphicomponenten\Overbyte V7\Delphi\Vc32";"C:\Delphicomponenten\TEmail 2010";"C:\Delphicomponenten\ICS Mail\Delphi";"C:\Delphicomponenten\Overbyte V7\Delphi";"C:\Delphicomponenten\ICS Mail\Delphi\Internet";"c:\program files (x86)\embarcadero\rad studio\7.0\lib";"C:\Users\sko\Documents\RAD Studio\7.0\Imports";"c:\program files (x86)\embarcadero\rad studio\7.0\Imports";"c:\program files (x86)\embarcadero\rad studio\7.0\Lib\Indy10";"C:\Users\Public\Documents\ RAD Studio\7.0\Dcp";"c:\program files (x86)\embarcadero\rad studio\7.0\include";"c:\program files (x86)\embarcadero\rad studio\7.0\RaveReports\Lib";C:\madCollection\madBa sic\BDS7;C:\madCollection\madDisAsm\BDS7;C:\madCol lection\madExcept\BDS7;C:\madCollection\madExcept\ ..\Plugins;C:\madCollection\madRemote\BDS7;C:\madC ollection\madKernel\BDS7;C:\madCollection\madCodeH ook\BDS7;C:\madCollection\madSecurity\BDS7;C:\madC ollection\madShell\BDS7 -K00400000 -GD -NO"C:\Users\Public\Documents\RAD Studio\7.0\Dcp" Projekt.dpr
da gibt es scheinbar keinerlei Größenbeschränkungen!

Ciao
Stefan
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.648 Beiträge
 
Delphi 11 Alexandria
 
#12

AW: Fehler beim Compilieren mit MSBuild

  Alt 20. Apr 2017, 13:33
Wie würde der kürzeste Aufruf von dcc32 im Batch aussehen können, wenn ich z.B. vorher rsvars.bat aufgerufen habe? Z.B. dcc32 Test.dproj? Probiert hab ich das, aber das bringt nur Fehler wie 'Ungültiges Zeichen...'.
Du musst die .dpr benutzen. Die dcc32.exe kann mit der .dproj nix anfangen.

da gibt es scheinbar keinerlei Größenbeschränkungen!
Doch, aber bei 4096 Zeichen oder so. Das dürfte auch der Grund für diese erhöhte Beschränkung bei aktuellen Delphiversionen sein.

In diesem Fall irrt die Doku offenbar
Die Doku stimmt schon. Das zusätzliche Zeichen ist das Semikolon zur Trennung.

Wie würde der kürzeste Aufruf von dcc32 im Batch aussehen können, wenn ich z.B. vorher rsvars.bat aufgerufen habe?
Du musst da die Pfade mit angeben, deshalb ist das nicht so einfach.
Sebastian Jänicke
AppCentral
  Mit Zitat antworten Zitat
Benutzerbild von Union
Union

Registriert seit: 18. Mär 2004
Ort: Luxembourg
3.492 Beiträge
 
Delphi 7 Enterprise
 
#13

AW: Fehler beim Compilieren mit MSBuild

  Alt 20. Apr 2017, 13:59
Und es wird immer besser :
Delphi-Quellcode:
program Doesitcompile;

{$APPTYPE CONSOLE}

uses
  SysUtils;

begin
  try
  // {$define ABCD-EFGH} // Output: ABCD-EFGH, ABCD
  // defined within Options // Output: ABCD-EFGH, ABCD, EFHG
  {$ifdef ABCD-EFGH}
  writeln('ABCD-EFGH');
  {$endif}
  {$ifdef ABCD}
  writeln('ABCD');
  {$endif}
  {$ifdef EFGH}
  writeln('EFGH');
  {$endif}
  Readln;
end.
Ibi fas ubi proxima merces
sudo /Developer/Library/uninstall-devtools --mode=all
  Mit Zitat antworten Zitat
ADelph

Registriert seit: 10. Aug 2009
97 Beiträge
 
Delphi 10.4 Sydney
 
#14

AW: Fehler beim Compilieren mit MSBuild

  Alt 20. Apr 2017, 14:10
tz, dann sieht das ja fast so aus, als könne ich meine Versuche 'knicken'...denn ich habe immer wieder eine gewisse Anzahl von bedingten Abschnitten in meinen Programmen. Wenn ich mir das Beispiel von sko1 ansehe, dann ist das in etwa das, was ich auch probiert habe und dort dann im Batch an Grenzen gestoßen bin. Sehr seltsam das......frage mich nur, warum das aus der IDE immer klappt...

Danke erstmal für die Hinweise!
Wir versuchen in fehlerbehafteten Systemen mit fehlerhaften Entwicklungsumgebungen fehlerfreie Software zu erstellen - das kann nicht klappen

Geändert von ADelph (20. Apr 2017 um 15:03 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

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

AW: Fehler beim Compilieren mit MSBuild

  Alt 20. Apr 2017, 15:02
In diesem Fall irrt die Doku offenbar
Die Doku stimmt schon. Das zusätzliche Zeichen ist das Semikolon zur Trennung.
Ja, jetzt wo du es sagst, kann ich das auch so interpretieren.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
jbg

Registriert seit: 12. Jun 2002
3.483 Beiträge
 
Delphi 10.1 Berlin Professional
 
#16

AW: Fehler beim Compilieren mit MSBuild

  Alt 20. Apr 2017, 15:22
Und es wird immer besser :
Das Minuszeigen beendet den ersten Token und nur den nutzt der Compiler für die Auswertung. Somit ist {$ifdef ABCD-EFGH} und {$ifdef ABCD} für den Compiler identisch. Es wäre schön wenn der Compiler das als Warnung/Hinweis/Fehlermeldung ausgeben würde, tut er aber nicht. Du kannst auch {$ifdef ABCD ist mir doch egal} schreiben und bei {$define ABCD} wird das ganze als TRUE gewertet, da eben nur der erste Token zählt.

Dass das "ABCD-EFGH" durch die Options zu zwei Defines wird, liegt wohl am IDE Code der das Splitting macht.



Direkter DCC32.EXE Aufruf:
Man könnte auch einfach eine (alte) Projekt.cfg Datei neben der Projekt.dpr Datei anlegen und dort alles bis auf das "--no-config" und "Projekt.dpr" in Einzelzeilen schreiben.
Der Aufruf wäre dann einfach nur noch "DCC32.EXE Projekt.dpr"

Zitat:
-$R+
-B
-Q
-AWinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;Db iProcs=BDE;DbiErrs=BDE
-DDEBUG;madExcept;x-Fulldebugmode;x-Logmemoryleakdetailtofile;SQLx
-I"c:\program files (x86)\embarcadero\rad studio\7.0\lib\DE";"C:\Delphicomponenten\TStringal igngrid 2010";"C:\Delphicomponenten\Virtual Treeview\Source";"C:\Delphicomponenten\TCPort 4.00\source";C:\Delphicomponenten\tXLSFile;"C:\Del phicomponenten\Devicechange Komponente";"C:\Delphicomponenten\ICS Mail\Delphi\Vc32";"C:\Delphicomponenten\TEmail 2010\compon";"C:\Delphicomponenten\Overbyte V7\Delphi\Vc32";"C:\Delphicomponenten\TEmail 2010";"C:\Delphicomponenten\ICS Mail\Delphi";"C:\Delphicomponenten\Overbyte V7\Delphi";"C:\Delphicomponenten\ICS Mail\Delphi\Internet";"c:\program files (x86)\embarcadero\rad studio\7.0\lib";"C:\Users\sko\Documents\RAD Studio\7.0\Imports";"c:\program files (x86)\embarcadero\rad studio\7.0\Imports";"c:\program files (x86)\embarcadero\rad studio\7.0\Lib\Indy10";"C:\Users\Public\Documents\ RAD Studio\7.0\Dcp";"c:\program files (x86)\embarcadero\rad studio\7.0\include";"c:\program files (x86)\embarcadero\rad studio\7.0\RaveReports\Lib";C:\madCollection\madBa sic\BDS7;C:\madCollection\madDisAsm\BDS7;C:\madCol lection\madExcept\BDS7;C:\madCollection\madExcept\ ..\Plugins;C:\madCollection\madRemote\BDS7;C:\madC ollection\madKernel\BDS7;C:\madCollection\madCodeH ook\BDS7;C:\madCollection\madSecurity\BDS7;C:\madC ollection\madShell\BDS7
-LE"C:\Users\Public\Documents\RAD Studio\7.0\Bpl"
-LN"C:\Users\Public\Documents\RAD Studio\7.0\Dcp"
-NB"C:\Users\Public\Documents\RAD Studio\7.0\Dcp"
-O"C:\Delphicomponenten\TStringaligngrid 2010";"C:\Delphicomponenten\Virtual Treeview\Source";"C:\Delphicomponenten\TCPort 4.00\source";C:\Delphicomponenten\tXLSFile;"C:\Del phicomponenten\Devicechange Komponente";"C:\Delphicomponenten\ICS Mail\Delphi\Vc32";"C:\Delphicomponenten\TEmail 2010\compon";"C:\Delphicomponenten\Overbyte V7\Delphi\Vc32";"C:\Delphicomponenten\TEmail 2010";"C:\Delphicomponenten\ICS Mail\Delphi";"C:\Delphicomponenten\Overbyte V7\Delphi";"C:\Delphicomponenten\ICS Mail\Delphi\Internet";"c:\program files (x86)\embarcadero\rad studio\7.0\lib";"C:\Users\sko\Documents\RAD Studio\7.0\Imports";"c:\program files (x86)\embarcadero\rad studio\7.0\Imports";"c:\program files (x86)\embarcadero\rad studio\7.0\Lib\Indy10";"C:\Users\Public\Documents\ RAD Studio\7.0\Dcp";"c:\program files (x86)\embarcadero\rad studio\7.0\include";"c:\program files (x86)\embarcadero\rad studio\7.0\RaveReports\Lib";C:\madCollection\madBa sic\BDS7;C:\madCollection\madDisAsm\BDS7;C:\madCol lection\madExcept\BDS7;C:\madCollection\madExcept\ ..\Plugins;C:\madCollection\madRemote\BDS7;C:\madC ollection\madKernel\BDS7;C:\madCollection\madCodeH ook\BDS7;C:\madCollection\madSecurity\BDS7;C:\madC ollection\madShell\BDS7
-R"c:\program files (x86)\embarcadero\rad studio\7.0\lib\DE";"C:\Delphicomponenten\TStringal igngrid 2010";"C:\Delphicomponenten\Virtual Treeview\Source";"C:\Delphicomponenten\TCPort 4.00\source";C:\Delphicomponenten\tXLSFile;"C:\Del phicomponenten\Devicechange Komponente";"C:\Delphicomponenten\ICS Mail\Delphi\Vc32";"C:\Delphicomponenten\TEmail 2010\compon";"C:\Delphicomponenten\Overbyte V7\Delphi\Vc32";"C:\Delphicomponenten\TEmail 2010";"C:\Delphicomponenten\ICS Mail\Delphi";"C:\Delphicomponenten\Overbyte V7\Delphi";"C:\Delphicomponenten\ICS Mail\Delphi\Internet";"c:\program files (x86)\embarcadero\rad studio\7.0\lib";"C:\Users\sko\Documents\RAD Studio\7.0\Imports";"c:\program files (x86)\embarcadero\rad studio\7.0\Imports";"c:\program files (x86)\embarcadero\rad studio\7.0\Lib\Indy10";"C:\Users\Public\Documents\ RAD Studio\7.0\Dcp";"c:\program files (x86)\embarcadero\rad studio\7.0\include";"c:\program files (x86)\embarcadero\rad studio\7.0\RaveReports\Lib";C:\madCollection\madBa sic\BDS7;C:\madCollection\madDisAsm\BDS7;C:\madCol lection\madExcept\BDS7;C:\madCollection\madExcept\ ..\Plugins;C:\madCollection\madRemote\BDS7;C:\madC ollection\madKernel\BDS7;C:\madCollection\madCodeH ook\BDS7;C:\madCollection\madSecurity\BDS7;C:\madC ollection\madShell\BDS7
-U"c:\program files (x86)\embarcadero\rad studio\7.0\lib\DE";"C:\Delphicomponenten\TStringal igngrid 2010";"C:\Delphicomponenten\Virtual Treeview\Source";"C:\Delphicomponenten\TCPort 4.00\source";C:\Delphicomponenten\tXLSFile;"C:\Del phicomponenten\Devicechange Komponente";"C:\Delphicomponenten\ICS Mail\Delphi\Vc32";"C:\Delphicomponenten\TEmail 2010\compon";"C:\Delphicomponenten\Overbyte V7\Delphi\Vc32";"C:\Delphicomponenten\TEmail 2010";"C:\Delphicomponenten\ICS Mail\Delphi";"C:\Delphicomponenten\Overbyte V7\Delphi";"C:\Delphicomponenten\ICS Mail\Delphi\Internet";"c:\program files (x86)\embarcadero\rad studio\7.0\lib";"C:\Users\sko\Documents\RAD Studio\7.0\Imports";"c:\program files (x86)\embarcadero\rad studio\7.0\Imports";"c:\program files (x86)\embarcadero\rad studio\7.0\Lib\Indy10";"C:\Users\Public\Documents\ RAD Studio\7.0\Dcp";"c:\program files (x86)\embarcadero\rad studio\7.0\include";"c:\program files (x86)\embarcadero\rad studio\7.0\RaveReports\Lib";C:\madCollection\madBa sic\BDS7;C:\madCollection\madDisAsm\BDS7;C:\madCol lection\madExcept\BDS7;C:\madCollection\madExcept\ ..\Plugins;C:\madCollection\madRemote\BDS7;C:\madC ollection\madKernel\BDS7;C:\madCollection\madCodeH ook\BDS7;C:\madCollection\madSecurity\BDS7;C:\madC ollection\madShell\BDS7
-K00400000
-GD
-NO"C:\Users\Public\Documents\RAD Studio\7.0\Dcp"
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:03 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