在windows中运行不同的makefile
本文关键字:makefile 运行 windows | 更新日期: 2023-09-27 18:06:07
我已经下载了Apache Thrift并创建了一个可以很好地生成代码的Thrift文件(我使用csharp)。我现在已经到了在我的Visual Studio项目中包括Thrift的阶段(我使用的是2013年的版本),我被困在如何做到这一点。
Thrift包含了我需要的所有源文件,但是仅仅将它们复制到Visual Studio中就会产生大量错误。我注意到源代码附带了几个Makefile:和一个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.
正如你所看到的,这些错误只是基本的语法错误。
仍然是一个好主意,张贴源代码和的错误消息。我们不喜欢猜测,因为它效率极低。你需要快速的帮助,不是吗?
我需要的帮助是如何处理所有不同类型的makefile。
首先,我不确定为什么你需要一个makefile。您可以通过在预构建步骤中调用Thrift轻松地获得相同的结果。我通过批处理文件来完成,这给了我足够的过程控制。但是,是的,您当然也可以在这里调用nmake -f makefile
,但请注意,在makefile
之后没有扩展名。
简单地说,没有花费太多的时间在细节上,makefile.am
和makefile.in
是典型的GNU自动生成文件。粗略地说,在bootstrap.sh && configure
期间,这些makefile.am
文件被转换成makefile.in
文件,最后被转换成makefile
文件,然后被make
或等效的工具使用。
但老实说,在Windows平台上,GNU automake是我会考虑的最后选择——如果有任何其他可用的选项,选择那个。
最后,教程,库和测试*。csproj文件至少展示了一种在预构建步骤中集成Thrift的方法。