如何使用cl预处理为masm组装生成单独的文件

时间:2019-07-18 10:14:09

标签: c++ cl

我有一个c / c ++ .h文件(好的.h表示c)。

我有条件#ifdef块。在一种情况下,该块准备语句以输入到masm中。第二个代码块用于C / C ++构建。

我正在使用的cl命令如下。

cl /D=ASM_PREPROCESS /P /EP BootDefs.h /Fi:BootDefs.i

.h文件中的代码块如下:

#ifdef ASM_PREPROCESS

MASM statements here

#else

C/C++ statements here.

#endif

但是,当我运行cl命令时,我得到的只是.i文件中的空行。显然我做错了什么。我只是想知道是否有其他工程师看到了这个问题。我认为这与stdout有关,但对于我的一生,我看不到适用的正确标志。

我使用的工具集是Visual Studio 2019和最新的SDK。

1 个答案:

答案 0 :(得分:0)

我已解决问题。

它与/ D = ASM_PREPROCESS有关。我认为这是一个错误,但是更改为/ DASMPREPROCESS可以解决此问题。

Do!