Erzeugt eine Liste von Präprozessor-Makros, die vom Compiler definiert wurden

8

Mit gcc und gfortran kann ich eine Liste von Preproffesor-Makros erstellen, die vom Compiler mithilfe (zur Bearbeitung der ouah-Antwort) definiert wurden.

%Vor%

und

%Vor%

bzw. (zumindest unter Linux).

Wie kann ich das gleiche mit den Intel Compilern ICC und IFORT machen? Ich weiß, dass für Makros diese Makros definiert sind hier , aber ich würde gerne diese Liste selbst erstellen können, da die verwendeten Makros und deren Werte von den verwendeten Compiler-Optionen abhängen. Mir ist auch das vordefinierte Projekt bekannt.

    
Chris 19.02.2012, 13:50
quelle

3 Antworten

3

Mit dem Intel Fortran-Compiler ifort kann Folgendes verwendet werden:

%Vor%

Es scheint, als hätte ifort kein äquivalentes -dM Flag wie icc, gfortran und gcc do.

    
Chris 16.03.2012, 09:19
quelle
10

Verwenden Sie dies mit dem Intel-Compiler:

%Vor%

Beachten Sie, dass mit gcc auch die Option -E erforderlich ist, wenn Sie die% pre_option -dM verwenden möchten.

    
ouah 19.02.2012 13:55
quelle
1

Achten Sie bei gfortran darauf, dass gfortran -E -dM - < /dev/null dasselbe Ergebnis liefert, als hätten Sie gcc aufgerufen, was wahrscheinlich nicht hilfreich ist. Sie möchten wahrscheinlich so etwas ( Quelle ):

gfortran -cpp -E -dM empty.f

Damit erhalten Sie eine kleinere Liste, was gfortran tatsächlich vorgibt. Sie werden feststellen, dass die Ergebnisse höchstwahrscheinlich nichts enthalten, was zur Bestimmung des Betriebssystems hilfreich ist. Im Allgemeinen müssen Sie diese für Fortran selbst definieren. Weitere Details finden Sie hier . Sie könnten auch etwas wie dies ausprobieren, aber ich bin etwas skeptisch gegenüber der praktischen Lösung. Diese Verknüpfung bedeutet auch, dass gfortran zu einem bestimmten Zeitpunkt mehr definiert ist als jetzt.

    
patrickvacek 26.09.2014 18:49
quelle