AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Die Delphi-IDE unklare Definition von Compilerschalter
Thema durchsuchen
Ansicht
Themen-Optionen

unklare Definition von Compilerschalter

Ein Thema von Helmi · begonnen am 1. Dez 2014 · letzter Beitrag vom 15. Dez 2014
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von Helmi
Helmi

Registriert seit: 29. Dez 2003
Ort: Erding, Republik Bayern
3.336 Beiträge
 
Delphi XE2 Professional
 
#1

unklare Definition von Compilerschalter

  Alt 1. Dez 2014, 18:43
Hallo,

ich hab in einer Komponente folgenden Code:

Delphi-Quellcode:
{$ifdef LINUX}
  //irgend ein Code
{$endif}
{$ifdef WIN32}
  //irgend ein Code
{$endif}
Auf was bezieht sich das WIN32? - auf das installierte Windows (bei mir 64 bit) oder auf Installation von Delphi (XE2 scheint ja 32 bit zu sein)
mfg
Helmi

>> Theorie ist Wissen, dass nicht funktioniert - Praxis ist, wenn alles funktioniert und keiner weiss warum! <<
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#2

AW: unklare Definition von Compilerschalter

  Alt 1. Dez 2014, 18:47
IMMER auf den Compiler, also das Ziel, für welches er kompiliert.

Auf aktive Dinge kann man nachträglich (nach dem Kompilieren) natürlich nicht prüfen, also wie z.B. das akuelle Windows, wo das Programm läuft.
$2B or not $2B
  Mit Zitat antworten Zitat
Benutzerbild von Helmi
Helmi

Registriert seit: 29. Dez 2003
Ort: Erding, Republik Bayern
3.336 Beiträge
 
Delphi XE2 Professional
 
#3

AW: unklare Definition von Compilerschalter

  Alt 1. Dez 2014, 18:53
IMMER auf den Compiler, also das Ziel, für welches er kompiliert.

Auf aktive Dinge kann man nachträglich (nach dem Kompilieren) natürlich nicht prüfen, also wie z.B. das akuelle Windows, wo das Programm läuft.
Danke! - macht irgendwie Sinn
mfg
Helmi

>> Theorie ist Wissen, dass nicht funktioniert - Praxis ist, wenn alles funktioniert und keiner weiss warum! <<
  Mit Zitat antworten Zitat
Benutzerbild von Helmi
Helmi

Registriert seit: 29. Dez 2003
Ort: Erding, Republik Bayern
3.336 Beiträge
 
Delphi XE2 Professional
 
#4

AW: unklare Definition von Compilerschalter

  Alt 14. Dez 2014, 20:08
Hallo,

so richtig durchblicken tu ich mit diesen Compiler-Schalter nicht

Ich hab folgendes Problem:

Wie auf dem Bild zu sehen ist, ist zwar 32-Bit Windows aktiviert, im Code läuft er aber immer
in den Linux-Teil hinein (wenn ich mich durchstep).

Wie kann das sein? - Kann man das noch irgendwo einrichten?

Nebenbei bemerkt:
Der Code stammt aus einer Komponente (libnodave) und wurde in ein Package installiert, das aber
32-bit Windows ist
Miniaturansicht angehängter Grafiken
unbenannt2.png  
mfg
Helmi

>> Theorie ist Wissen, dass nicht funktioniert - Praxis ist, wenn alles funktioniert und keiner weiss warum! <<
  Mit Zitat antworten Zitat
Benutzerbild von Stevie
Stevie

Registriert seit: 12. Aug 2003
Ort: Soest
4.027 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#5

AW: unklare Definition von Compilerschalter

  Alt 15. Dez 2014, 08:29
Die LINUX Direktive stammt noch aus Kylix Zeiten, soweit ich weiß und wird aktuell gar nicht gesetzt.
Daher glaube ich eher, dass dort in der Komponente irgendwo ein IFDEF nicht richtig zieht und das möglicherweise anschaltet.
Stefan
“Simplicity, carried to the extreme, becomes elegance.” Jon Franklin

Delphi Sorcery - DSharp - Spring4D - TestInsight
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#6

AW: unklare Definition von Compilerschalter

  Alt 15. Dez 2014, 09:00
Angeblich soll es "bald" wieder Linux geben, aber egal.

Was steht denn in Projektoption > Delphi-Compiler > Bedingungen, denn einige Defines werden dort definiert, wie z.B. das DEBUG.
Und hast du im Code mal nach {$DEFINE gesucht?
$2B or not $2B
  Mit Zitat antworten Zitat
Benutzerbild von Helmi
Helmi

Registriert seit: 29. Dez 2003
Ort: Erding, Republik Bayern
3.336 Beiträge
 
Delphi XE2 Professional
 
#7

AW: unklare Definition von Compilerschalter

  Alt 15. Dez 2014, 09:49
Was steht denn in Projektoption > Delphi-Compiler > Bedingungen, denn einige Defines werden dort definiert, wie z.B. das DEBUG.
Dort ist nur DEBUG definiert - sonst nichts

Und hast du im Code mal nach {$DEFINE gesucht?
ja - aber in den Units der Komponente gibt es zwar $DEFINE´s - aber keine die LINUX oder WIN32 lauten
mfg
Helmi

>> Theorie ist Wissen, dass nicht funktioniert - Praxis ist, wenn alles funktioniert und keiner weiss warum! <<
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#8

AW: unklare Definition von Compilerschalter

  Alt 15. Dez 2014, 10:35
Beim Debuggen sind die blauen Punkte (welche du dort mit abgeschnitten hast) auch in dem Linux-Define?

Es könnte zwar auch ein Bug im Delphi sein, aber das wäre Anderen doch auch aufgefallen?
Eigentlich sollten diese DEFINEs nur vom Compiler gesetzt werden, aber im Grunde kann die jeder beliebig ändern.

DEBUG;CONSOLE;MSWINDOWS;WIN32;WIN64;MACOS;MACOS32;IOS;ANDROID;LINUX;LINUX32;POSIX;POSIX32;EUREKALOG;EUREKALOG_VER6 in deine Projektoptionen oder als DEFINEs in alle deine Units und du kompilierst ein Programm, welches überall läuft.
$2B or not $2B

Geändert von himitsu (15. Dez 2014 um 10:43 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Helmi
Helmi

Registriert seit: 29. Dez 2003
Ort: Erding, Republik Bayern
3.336 Beiträge
 
Delphi XE2 Professional
 
#9

AW: unklare Definition von Compilerschalter

  Alt 15. Dez 2014, 10:40
Hallo,

ja - es liegt im Linux-Define (siehe Bild)
Miniaturansicht angehängter Grafiken
unbenannt3.png  
mfg
Helmi

>> Theorie ist Wissen, dass nicht funktioniert - Praxis ist, wenn alles funktioniert und keiner weiss warum! <<
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#10

AW: unklare Definition von Compilerschalter

  Alt 15. Dez 2014, 10:57
Mir fällt grade ein: Selbst wenn Linux irgendwo "ausversehn" mit gesetzt/definiert wird, dann müsste doch WIN32 dennoch/auch definiert sein.

.dproj löschen und neu erstellen lassen?
bzw. mal in der .dproj mal nach LINUX suchen. (im Notepad öffnen)
$2B or not $2B
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 15:23 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