linux node gyp 编译,node在windows下node-gyp编译可能会出现的问题

node在windows下nw-gyp编译可能会出现的问题

若是有第三方的include文件和lib文件 应该在nw-gyp生成的.xcxproj中修改一下,

include的文件路径要更新到全部的 AdditionalIncludeDirectories项里,

lib文件要在全部AdditionalDependencies项里指明完整路径,须要的其它系统库文件也要在这里写上。node

搞混了,实际上是想用node-gyp编译来,结果各方面都设置好之后,发现报错windows

libeay32MTd.lib(cryptlib.obj) : error LNK2001: unresolved external symbol _ssca

nf [C:\node\crypt\build\tpcrypt.vcxproj]

libeay32MTd.lib(cryptlib.obj) : error LNK2001: unresolved external symbol __vsn

printf [C:\node\crypt\build\tpcrypt.vcxproj]

libeay32MTd.lib(cryptlib.obj) : error LNK2001: unresolved external symbol ___io

b_func [C:\node\crypt\build\tpcrypt.vcxproj]

C:\node\crypt\build\Release\tpcrypt.node : fatal error LNK1120: 3 unresolved ex

ternals [C:\node\crypt\build\tpcrypt.vcxproj]app

google,百度无果函数

无心中用vs2013直接打开configure生成的sln文件,而后在vs里面手工指定node.lib,去掉不相关的系统lib,把对应的SSL三方库改为对应设置里的 C/C++ -> 代码生成 -> 运行库里设置的类型。直接用vs编译,报错,大致跟上面的报错一致 只不过改为了测试

unresolved external symbol __imp__sscanf referenced in function

ui

其实仍是找不到这几个函数,经过stackoverflow上的只字片语了解这个原本是vc6里的方法,后来vs2010之后就不支持了,用了新的iob方法来代替。好在这几个函数没啥用,经过设置里的 C/C++ -> 常规 ->SDL检查,设置为 否 ,编译经过,测试可用。google

若是调用模块时出现spa

Error: %1 is not a valid Win32 application.

ci

这说明生成的模块跟平台不一致(32位、64位)it

Error: The specified module could not be found.

通常是须要把所需的第三方的dll复制到.node的同级目录里。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值