运行 windows 中的不同 makefile

Running different makefiles in windows

我下载了 Apache Thrift 并创建了一个可以很好地生成代码的 thrift 文件(我使用的是 csharp)。我现在已经到了将 Thrift 包含在我的 Visual Studio 项目中的阶段(我使用的是 2013 版本)并且我一直在思考如何做到这一点。

Thrift 包含我需要的所有源文件,但只是将它们复制到 Visual Studio 会产生大量错误。我注意到源代码附带了几个 makefile:有一个 Makefile.am 和一个 Makefile.in。我试过 运行:

nmake -f Makefile.am
nmake -f Makefile.in

但我不断收到语法错误。

如有任何帮助,我们将不胜感激。

语法错误如下:

 Makefile.am(73) : fatal error U1034: syntax error : separator missing
Stop.

和:

Makefile.in(16) : fatal error U1035: syntax error : expected ':' or '=' separator
Stop.

As you can see the errors are just basic syntax one's.

仍然是 post 来源 错误消息的好主意。我们不喜欢猜测,因为它非常低效。你想要快速帮助,是吗?

The help I need is what to do with all the different types of makefiles.

首先,我完全不确定您为什么需要生成文件。您可以通过在预构建步骤中调用 Thrift 轻松实现相同的结果。我通过批处理文件来做到这一点,这使我能够充分控制该过程。但是,是的,您当然也可以在这里调用 nmake -f makefile,但请注意 makefile.

之后 没有扩展名

简而言之,无需在细节上花费太多时间,makefile.ammakefile.in 通常是 GNU automake 文件。粗略地说,在 bootstrap.sh && configure 期间,这些 makefile.am 文件被转换为 makefile.in 文件,最后转换为 makefile 文件,然后由 make 或等效工具使用。

但老实说,在 Windows 平台上,GNU automake 是我考虑的最后选择 - 如果有 任何其他选项 可用,请选择那个一.

最后一点,教程、库和测试 *.csproj 文件至少展示了一种如何在预构建步骤中集成 Thrift 的方法。