在Cygwin上构建Nodejs时出现构建错误

Build error while building Nodejs on Cygwin

本文关键字:构建 错误 Nodejs Cygwin      更新时间:2023-10-16

我需要一些帮助在cygwin上编译Node源代码。每次我尝试进行构建时,它都会抛出以下错误消息。我使用的是Windows 8和Cygwin 1.7.28。我试过安装 YASM。请帮忙!

python tools/gyp_node -f make
make -C out BUILDTYPE=Release V=1
make[1]: Entering directory '/home/vineet/node-v0.8.22/out'
  *LD_LIBRARY_PATH=/home/vineet/node-v0.8.22/out/Release/lib.host:/home/vineet/node-v0.8.22/out/Release/lib.target:$LD_LIBRARY_PATH; export LD_LIBRARY_PATH; cd ../deps/openssl; mkdir -p /home/vineet/node-v0.8.22/out/Release/obj.target/openssl/geni; ml64.exe /Zi /Fo "/home/vineet/node-v0.8.22/out/Release/obj.target/openssl/geni/aes-x86_64.obj" /c "/home/vineet/node-v0.8.22/deps/openssl/asm/x64-win32-masm/aes/aes-x86_64.asm"
/bin/sh: ml64.exe: command not found
deps/openssl/openssl.target.mk:10: recipe for target '/home/vineet/node-v0.8.22/out/Release/obj.target/openssl/geni/aes-x86_64.obj' failed
make[1]: *** [/home/vineet/node-v0.8.22/out/Release/obj.target/openssl/geni/aes-x86_64.obj] Error 127
make[1]: Leaving directory '/home/vineet/node-v0.8.22/out'
Makefile:26: recipe for target 'node' failed
make: *** [node] Error 2*

好吧,既然它在抱怨ml64,你必须建立:

  1. 您的系统上真的masm/x64吗?它可能在类似 C:Program Files (x86)Microsoft Visual Studio 9.0VCbinamd64 的目录中

  2. 您的路径是否在 CygWin 中设置为引用该目录,以便可以找到可执行文件?

通过错误消息:

/bin/sh: ml64.exe: command not found

几乎可以肯定,这是这两个问题之一。

事实上,你可以从Microsoft下载一个VC++快递,它是免费的。 只需打开一个VC++ X86命令提示符,然后简单地执行VCbuild.bat,cygwin在这种情况下是没有用的。