这是我到目前为止在x64 OS上所做的事情:
-
安装了Python(v2.7-特定于2.7.6),并将其添加到系统路径(C: Python27)
-
已安装MS VS C 2010 Express版本(我已经有VS 2012,但没有C 组件)
-
安装了Windows SDK 7.1
的编译器更新 -
成功地执行了节点GYP configure(从我的附加组件 nodejs node_modules下的binding.gyp位于nodejs node_modules)
-
运行node-gyp build(作为管理员)**这是崩溃的,让我感到:
此错误:
C:Program Filesnodejsnode_modulesmsnodesql>node-gyp build
gyp info it worked if it ends with ok
gyp info using node-gyp@0.12.2
gyp info using node@0.10.25 | win32 | x64
gyp info spawn C:WindowsMicrosoft.NETFrameworkv4.0.30319msbuild.exe
gyp info spawn args [ 'build/binding.sln',
gyp info spawn args '/clp:Verbosity=minimal',
gyp info spawn args '/nologo',
gyp info spawn args '/p:Configuration=Release;Platform=x64' ]
Building the projects in this solution one at a time. To enable parallel build, please add the "/m" switch.
链接:致命错误lnk1181:无法打开输入文件'kernel32.lib'[c: program文件 nodejs nodejs node_modules msnodesql msnodesql build sqlserver.vcxproj] 关于正在发生的事情的任何想法?gyp ERR! build error
gyp ERR! stack Error: `C:WindowsMicrosoft.NETFrameworkv4.0.30319msbuild.exe` failed with exit code: 1
gyp ERR! stack at ChildProcess.onExit (C:UsersRNelsonAppDataRoamingnpmnode_modulesnode-gyplibbuild.js:267:23)
gyp ERR! stack at ChildProcess.EventEmitter.emit (events.js:98:17)
gyp ERR! stack at Process.ChildProcess._handle.onexit (child_process.js:797:12)
gyp ERR! System Windows_NT 6.1.7601
gyp ERR! command "node" "C:\Users\RNelson\AppData\Roaming\npm\node_modules\node- gyp\bin\node-gyp.js" "build"
gyp ERR! cwd C:Program Filesnodejsnode_modulesmsnodesql
gyp ERR! node -v v0.10.25
gyp ERR! node-gyp -v v0.12.2
gyp ERR! not ok
我也有类似的问题。我发现这种开关帮助了我
--msvs_version=2012
所以例如
npm install --msvs_version=2012 <package>
npm config set msvs_version 2013 --global
在我使用vs节点工具时为我工作,并且每次进行NPM安装时,您都不需要指定MSVS_Version。
我有一个问题,即NPM的config(c: users username .npmrc)具有输入MSVS_VERSION = 2012,它已过时。
花了一段时间让我开始工作(对我来说,答案不起作用,对我来说只是解决方案的一半),我确实遵循:
-
可悲的是,您必须拥有Visual Studio(我安装了Express Edition 2013对于桌面)
-
安装了Python 2.7.3(您不必设置任何环境变量)
-
运行CMD作为管理员,然后转到项目root(您在哪里package.json文件)
-
第一次运行:
npm config set python C:Python27python.exe
-
然后:
npm install -msvs_version=2013
技巧是在命令npm config set python ...path_to_python_exe...
中,它将由NPM提供给我需要Python的依赖项。我不知道为什么将Python设置为Env变量还不够。
如果上述所有操作都无法使用(我的情况 - Windows> Windows10 64bit )
delete C: USER USER_NAME .node-gyp
delete %appdata%/npm
delete %appdata%/npm-cache
和安装节点gyp 再次
在节点GYP页面上的指令
i选择选项1 npm install-global - 制作Windows-Build-tools
用于安装节点 - Windows或任何其他OS
中的GYP首先,您可能必须通过
下载节点GYP$ npm install -g node-gyp-install
然后通过
安装$ npm install -g node-gyp
您可能需要执行上述过程作为root/indurandortor。
我现在在2015年尝试安装keystone和我现在有同样的错误您告诉我的一切都跑了,但它并没有用它自己的工作。最后,我只需要运行命令
"C:Program FilesMicrosoft SDKsWindowsv7.1binSetEnv.CMD" /Release /x64
在运行命令之前要设置环境。(当它使窗户文本绿色转动时,不要吓坏了)。所以,是的,我将在Internet上到处都以相同的方式进行安装并设置环境变量建议,但请确保在运行任何其他命令之前运行上述命令。它可能对您没有用,但希望它对其他人有用。如果仍然不起作用,MSVS版本2010对我有用,请安装该版本并在运行NPM命令时使用flag -msvs_version =2010。
--msvs_version
参数,它只是起作用。
我本人遇到了这个问题,这就是我使用Visual Studio 2010来解决它的方式:
安装以下软件包
- Python 2.7
- Visual C Studio 2010 Express
- Windows SDK 7.1注意:如果您在安装时会出现错误,则此链接可能会帮助您。
- Visual Studio 2010 SP1
- Visual C 2010 SP1 SP1编译器更新Windows SDK 7.1
从Windows SDK命令提示符中使用npm install
(您需要此功能,因为它设置了其他环境变量)。
来源:VS2010的节点GYP指令
对我(Windows 7 64bit),
我在这个问题上挣扎了半天,终于奏效了。
在我的路上:
-
在控制面板上,我删除了所有Python,Microsoft Visual Studio,Microsoft Redistibutable以及有关解决此问题的内容。
-
窗口更新并重新启动。
-
安装了python27和Visual Studio 2013 没有设置Env-Val
-
npm install node-gyp -g
- 我有同样的错误,但是在
npm config set msvs_version 2013 --global
之后,它起作用了。
有一个易于使用Windows Build Tools Global Node软件包。您可以尝试一下。
我也遇到了类似的问题,这对我有用。
- 删除了Python和Visual Studio
- 安装了Python 27和Microsoft Visual Studio,并带有"桌面开发,c &quot"
- 设置Python Path
npm config set python /path/to/executable/python
-
npm install node-gyp -g
-
node-gyp configure --msvs_version=2013
只是遇到了同样的问题。安装NVM(Node版本管理器),然后打开您的CMD,然后使用NVM install node@,然后使用依赖关系所需的版本。如果您不知道可能需要尝试使用不同版本的版本,我将节点恢复回14.15.0版,然后使用NPM安装,一切顺利进行!希望这有帮助!
在PowerShell中安装powershell的chocolatey
,并带有管理员权限:
Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))
安装Microsoft构建Visual Studio的工具所需的版本:https://community.chocalyy.org/packages?
在我的情况下:
choco install visualstudio2019buildtools
并安装工作负载:
cinst visualstudio2019-workload-vctools
与节点16.16.0合作如果使用NVM。重新安装节点版本。一切都很好。