--------------------------------------DAY 5--------------------------------------------------------------
【(五上)安装node-gyp并build——解决 "node.lib:fatal error LNK1127" 问题】今天要先看清楚node-gyp的使用
h如何写能让node.js运用的C++函数超级有用的博文
所谓的官方文档在哪里?V8引擎的头文件代码在此——V8引擎头文件
node-gyp build的时候报错:
文章图片
2条思路: node.lib有错呢?还是msbuild.exe有错呢?
在我利用:
文章图片
这个full安装包去安装也没有成功,也就是说,不是
文章图片
这些的问题了。
先看看msbuild.exe吧,这个到底是干嘛用的呢?
文章图片
文章图片
12.0 和14.0,为什么就用了12.0呢?用14.0可不可以?
MSbuild是什么,参考msdn: https://msdn.microsoft.com/zh-cn/library/0k6kkbsd.aspx
在安装node-gyp之前,npm config set msvs_version 2013 设置的版本号就会给node-gyp对应的版本号,以后每次node-gyp configure运行的时候使用的vs版本就是对应的平台。例如,我安装node-gyp之前使用npm设置成2013,node-gyp build的时候产生的错误就变成了:
这回使用的是14.0,仍然错误了。那就是node.lib的问题了!——确定问题的根源
文章图片
npm config list //查看基本配置
在安装node-gyp之后首次输入node-gyp configure命令时,会联网下载一堆的node.lib
————而且要我等蛮久的!!!
文章图片
那么问题来了,当初是不是因为这个东西??一直都卡在下载这个步骤。
终于解决了————感激涕零,肯定是这个node-gyp命令的下载链接有问题,所以我去它提示的官网自己下了个win-x86的node.lib回来,替换掉,发现就可以build成功了!!
node-gyp clear
node-gyp configure
node-gyp build
我也遇到了这个问题: 我记得在那个谁的博客上看过的!!!大概原因就是没有编译成electron可以使用的模块吧!
文章图片
根据博客上,使用electron-rebuild, 不存在这个包,我又用npm下载了这个包,
输入命令
.\node_modules\.bin\electron-rebuild .\build\Release\binding
文章图片
Rebuild成功,再试试
通过测试,可以调用binding.cc中使用C++写的函数了!