Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Die Delphi-IDE (https://www.delphipraxis.net/62-die-delphi-ide/)
-   -   XE5: [dcc32 Warnung] W1030 Ungültige Compileranweisung: 'true' (https://www.delphipraxis.net/178359-xe5-%5Bdcc32-warnung%5D-w1030-ungueltige-compileranweisung-true.html)

Poolspieler 3. Jan 2014 15:51

XE5: [dcc32 Warnung] W1030 Ungültige Compileranweisung: 'true'
 
Hallo zusammen,
ich habe heute XE5 (Update2) in Betrieb genommen und bekommen folgende Compilerwarnung - allerdings NUR für die Buildkonfiguration RELEASE (bei DEBUG kommt sie nicht):
[dcc32 Warnung] W1030 Ungültige Compileranweisung: 'true'

Ursache:
Zitat:

Abhängigkeiten des Projekts werden überprüft...
Erzeugen von firmwareupdate.dproj (Release, Win32)
brcc32 Befehlszeile für "firmwareupdate.vrc"
c:\program files (x86)\embarcadero\rad studio\12.0\bin\cgrc.exe -c65001 "firmwareupdate.vrc" -fofirmwareupdate.res
dcc Befehlszeile für "firmwareupdate.dpr"
c:\program files (x86)\embarcadero\rad studio\12.0\bin\dcc32.exe true -$Y- --no-config -B -Q -TX.exe
................
[dcc32 Warnung] W1030 Ungültige Compileranweisung: 'true'
Erfolg
Verstrichene Zeit: 00:00:00.9
Kann mir jemand sagen, wie es zu diesem "true" kommt. Ich habe schon in den Projektoptionen gesucht - aber nirgends einen Anhaltspunkt gefunden.
Wo werden die Parameter für die Kompileranweisung gebaut?

Viele Grüße,

Poolspieler

jaenicke 3. Jan 2014 16:06

AW: XE5: [dcc32 Warnung] W1030 Ungültige Compileranweisung: 'true'
 
In deiner .dproj Projektdatei such einmal nach DCC_DebugInformation. Bei dir steht dort true, dieser Wert ist nun nicht mehr gültig. Dort muss nun 0, 1 oder 2 stehen.

Einstellen kannst du das auch in den Projektoptionen unter Compilieren. Dort steht bei dir nichts im Feld Debug-Informationen, wähle einfach einen der Werte aus, dann kommt die Warnung nicht mehr.

Poolspieler 3. Jan 2014 19:21

AW: XE5: [dcc32 Warnung] W1030 Ungültige Compileranweisung: 'true'
 
Hallo jaenicke,
danke für Deine Antwort.
Du hast Recht, ich kann dies in der .dproj Datei ändern.
Wie es scheint, hat Delphi hier wohl einen Bug:

Leider ist die Änderung nur bis zum nächsten Umschalten zwischen DEBUG und RELEASE aktiv.

Vor dem Umschalten von DEBUG auf RELEASE:
Code:
    <PropertyGroup Condition="'$(Cfg_1)'!=''">
        <DCC_LocalDebugSymbols>false</DCC_LocalDebugSymbols>
        <DCC_Define>RELEASE;$(DCC_Define)</DCC_Define>
        <DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
        <DCC_DebugInformation>0</DCC_DebugInformation>
    </PropertyGroup>
    <PropertyGroup Condition="'$(Cfg_1_Win32)'!=''">
        <DCC_DebugInformation>0</DCC_DebugInformation>
Und danach:
Code:
    <PropertyGroup Condition="'$(Cfg_1)'!=''">
        <DCC_LocalDebugSymbols>false</DCC_LocalDebugSymbols>
        <DCC_Define>RELEASE;$(DCC_Define)</DCC_Define>
        <DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
        <DCC_DebugInformation>0</DCC_DebugInformation>
    </PropertyGroup>
    <PropertyGroup Condition="'$(Cfg_1_Win32)'!=''">
        <DCC_DebugInformation>true</DCC_DebugInformation>
Das ist jetzt zwar nicht dramatisch. Ich würde aber schon gern wissen, woran es liegt.
Hat jemand eine Idee oder sollte man hier ein Support Ticket bei Embarcadero aufmachen?

Viele Grüße,

Poolspieler

jaenicke 3. Jan 2014 19:32

AW: XE5: [dcc32 Warnung] W1030 Ungültige Compileranweisung: 'true'
 
Hast du denn in den Projektoptionen mal in allen Konfigurationen einen gültigen Wert eingetragen?

Denn dass das Umschalten zwischen den Konfigurationen Probleme macht, zeigt, dass es da vermutlich Unterschiede gibt.

Poolspieler 3. Jan 2014 19:54

AW: XE5: [dcc32 Warnung] W1030 Ungültige Compileranweisung: 'true'
 
Ja, ich habe in allen sechs Projektkonfigurationen einen Wert eingetragen. Das hat leider nichts gebracht.

Ok, ich habe dann mal weiter damit herumgespielt.
Eigentlich hätte ich gedacht, in einem RELEASE braucht mal keine Debug-Informationen.
Deshalb wollte ich da auch "0" für "keine Debuginformationen" einstellen.
--> Und genau das geht bei mir NICHT. Der macht dann automatisch beim Erzeugen der EXE ein "true" daraus.
--> Stelle ich auf "1" (begrenzte Debuginformationen) oder "2" (Debuginformationen) um, dann behält er auch die Einstellungen und es kommt zu keiner Compilerwarnung.

Ich könnte mir nun drei Ursachen vorstellen:
1. Dieses Projekt wurde vor langer Zeit erstellt (wahrscheinlich mit Delphi2009) --> vielleicht gibt es ja einen Bug, der beim diversen Portieren zwischen den Delphiversionen (XE, XE2, XE3, XE5) zu einem Problem führt --> ich habe gerade mal eine neue VCL-Anwendung erzeugt --> damit gibt es keine Probleme beim Umschalten...??? :shock:
2. Allgemeiner Bug in XE5 (in XE3 hatte ich das Problem nicht)
3. Es hängt vielleicht irgendwie mit MadExcept zusammen (reine Mutmaßung...)

Gruß,

Poolspieler

Poolspieler 3. Jan 2014 19:59

AW: XE5: [dcc32 Warnung] W1030 Ungültige Compileranweisung: 'true'
 
Nachtrag:
Wie es aussieht, liegt es tatsächlich an madExcept.
Wenn ich es in den Projektoptionen deaktiviere, dann funktioniert das Umschalten problemlos.
Ich werde das Problem an Matthias weiterleiten...

Viele Grüße,

Poolspieler

jaenicke 3. Jan 2014 20:55

AW: XE5: [dcc32 Warnung] W1030 Ungültige Compileranweisung: 'true'
 
Das erklärt warum das Problem mal bei mir aufgetreten ist... ich hatte testweise madExcept installiert. :thumb:
Daher wusste ich woran es liegt, aber da ich madExcept dann schon wieder deaktiviert hatte, hatte ich dein zweites Problem nicht.

Poolspieler 4. Jan 2014 12:14

AW: XE5: [dcc32 Warnung] W1030 Ungültige Compileranweisung: 'true'
 
Hallo zusammen,
ich habe das Problem an Matthias weitergegeben.

Erkenntnis:
Es ist wohl ein Problem in XE5.

Abhilfe:
Sowohl für DEBUG, als auch für RELEASE sollte man eine "2" für volle Debuginformationen eintragen.
Dann muss madExcept keine Änderungen vornehmen und es kommt nicht zum Problem.

Viele Grüße,

Poolspieler

jaenicke 4. Jan 2014 12:35

AW: XE5: [dcc32 Warnung] W1030 Ungültige Compileranweisung: 'true'
 
Das ist kein Problem in XE5, denn ohne madExcept funktioniert es bei mir mit allen drei Einstellungmöglichkeiten und mit verschiedenen Konfigurationen absolut problemlos...

Poolspieler 4. Jan 2014 12:42

AW: XE5: [dcc32 Warnung] W1030 Ungültige Compileranweisung: 'true'
 
Hallo jaenicke,
da hast Du Recht. Ohne madExcept tritt das Problem nicht auf.

Wenn ich Matthias richtig verstanden habe, dann versucht madExcept die Einstellung zu ändern (und übergibt wohl auch den korrekten Wert...).
Delphi interpretiert diesen aber falsch und trägt "true" ein. --> Und da ist wohl der Delphi-Bug.

Viele Grüße,

Poolspieler


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