什么<内置>,<命令行>在c预处理器输出文件中意味着什么

时间:2017-08-12 18:19:46

标签: c-preprocessor

我在Makefile中遇到了以下内容:

CPP    =cpp
GFLAGS =-traditional-cpp -Dlinux64 -DWM_ARCH_OPTION=64 -DWM_DP   \
-DWM_LABEL_SIZE=32 -Dlinux64 -DWM_ARCH_OPTION=64 -DWM_DP -DWM_LABEL_SIZE=32

op1: ./Make/options
@$(CPP) $(GFLAGS) ./Make/options | sed -e 's@   *@ @g' > op1

./Make/options中的内容如下:

EXE_INC = -I$/project/src/finiteVolume/lnInclude
EXE_LIBS = -lfiniteVolume 

我检查了生成的op1文件,内容如下:

# 1 "options"
# 1 "<built-in>"
# 1 "<command-line>"
# 8 "<command-line>"
# 1 "/usr/include/stdc-predef.h" 1 3 4

# 17 "/usr/include/stdc-predef.h" 3 4

我终于知道这与c-preprocessor有关。我不知道那些是什么意思。这样做可以解释它试图做什么吗?

1 个答案:

答案 0 :(得分:0)

cpp是C预处理器。此特定makefile似乎正在使用cpp(和sed)从op1文件生成文件./Make/options