代码之家  ›  专栏  ›  技术社区  ›  Leo Izen

编译C以使用clr[重复]

  •  3
  • Leo Izen  · 技术社区  · 14 年前

    可能重复:
    Compiling C code for .NET

    我有很多C源代码,我想编译它,所以它使用.NET框架。我下载了微软Visual C++并选择了新的CLR项目。然后我添加了所有的C代码,并试图编译这些文件。它说

    cl : Command line error D8045: cannot compile C file '..\..\..\..\..\Downloads\lzma912\C\XzDec.c' with the /clr option
    

    为什么我不能编译这个?

    2 回复  |  直到 14 年前
        1
  •  15
  •   Cătălin Pitiș    14 年前

    有时,查看msdn可以澄清问题。您需要强制编译器将C文件视为C++文件。见 here .

    引述:

    只有C++源代码文件可以传递给使用/CLR的编译。使用/tp将.c文件编译为.cpp文件;有关详细信息,请参阅/tc、/tp、/tc、/tp(指定源文件类型)。

        2
  •  5
  •   Brian R. Bondy    14 年前

    尝试使用 /Tp 选项,因此VC++认为您的源文件是C++代码而不是C。这样,您就不必更改文件扩展名。