Chr*_*ris 10 c preprocessor fortran icc intel-fortran
使用gcc和gfortran我可以生成编译器定义的预处理器宏列表(编辑以反映ouah的答案)
gcc -E -dM - < /dev/null
Run Code Online (Sandbox Code Playgroud)
和
gfortran -cpp -E -dM /dev/null
Run Code Online (Sandbox Code Playgroud)
分别(至少在Linux上).
我如何对英特尔编译器icc和ifort做同样的事情?我知道对于ifort这些宏是在这里定义的,但我希望能够自己生成这个列表,因为使用的确切宏及其值将取决于所使用的编译器选项.我也知道这个预先设计的项目.
oua*_*uah 11
与英特尔编译器一起使用:
icc -E -dM - < /dev/null
Run Code Online (Sandbox Code Playgroud)
请注意,如果要使用预处理器选项gcc,-E则还需要该-dM选项.
通过英特尔 Fortran 编译器 ifort,可以使用以下内容:
ifort -E -fpp /dev/null -dryrun 2>&1 | grep -e -D | cut -c 5-
Run Code Online (Sandbox Code Playgroud)
看来 ifort 没有-dM像 icc、gfortran 和 gcc 那样的等效标志。