【问题标题】:LINK : fatal error LNK1181:cannot open input file 'C:\OpenSSL-Win64\lib\libeay32.lib'链接:致命错误 LNK1181:无法打开输入文件 'C:\OpenSSL-Win64\lib\libeay32.lib'
【发布时间】:2016-12-22 11:21:56
【问题描述】:

我有 Windows 7 - 64 位和 Visual Studio 2013 Ultimate。我正在运行 npm install 命令并收到以下错误:

npm info it worked if it ends with ok
npm info using npm@3.8.3
npm info using node@v5.10.0
npm info attempt registry request try #1 at 10:01:07 AM
npm http request GET http://registry.npmjs.org/fsevents
npm http 304 http://registry.npmjs.org/fsevents
npm info attempt registry request try #1 at 10:01:09 AM
npm http request GET http://registry.npmjs.org/ursa
npm http 304 http://registry.npmjs.org/ursa
npm info lifecycle ursa@0.9.4~preinstall: ursa@0.9.4
npm info linkStuff ursa@0.9.4
npm info lifecycle ursa@0.9.4~install: ursa@0.9.4

> ursa@0.9.4 install C:\Users\sudhir_kumar05\mockingbird\node_modules\ursa
> node-gyp rebuild


C:\Users\sudhir_kumar05\mockingbird\node_modules\ursa>if not defined npm_config_node_gyp (node "C:\Program Files\nodejs\node_modules\npm\bin\node-gyp-bin\\..\..\node_modules\node-gyp\bin\node-gyp.js" rebuild )  else (node "" rebuild )
gyp info it worked if it ends with ok
gyp info using node-gyp@3.3.1
gyp info using node@5.10.0 | win32 | x64
gyp info spawn C:\Python27\python.EXE
gyp info spawn args [ 'C:\\Program Files\\nodejs\\node_modules\\npm\\node_modules\\node-gyp\\gyp\\gyp_main.py',
gyp info spawn args   'binding.gyp',
gyp info spawn args   '-f',
gyp info spawn args   'msvs',
gyp info spawn args   '-G',
gyp info spawn args   'msvs_version=2013',
gyp info spawn args   '-I',
gyp info spawn args   'C:\\Users\\sudhir_kumar05\\mockingbird\\node_modules\\ursa\\build\\config.gypi',
gyp info spawn args   '-I',
gyp info spawn args   'C:\\Program Files\\nodejs\\node_modules\\npm\\node_modules\\node-gyp\\addon.gypi',
gyp info spawn args   '-I',
gyp info spawn args   'C:\\Users\\sudhir_kumar05\\.node-gyp\\5.10.0\\include\\node\\common.gypi',
gyp info spawn args   '-Dlibrary=shared_library',
gyp info spawn args   '-Dvisibility=default',
gyp info spawn args   '-Dnode_root_dir=C:\\Users\\sudhir_kumar05\\.node-gyp\\5.10.0',
gyp info spawn args   '-Dnode_gyp_dir=C:\\Program Files\\nodejs\\node_modules\\npm\\node_modules\\node-gyp',
gyp info spawn args   '-Dnode_lib_file=node.lib',
gyp info spawn args   '-Dmodule_root_dir=C:\\Users\\sudhir_kumar05\\mockingbird\\node_modules\\ursa',
gyp info spawn args   '--depth=.',
gyp info spawn args   '--no-parallel',
gyp info spawn args   '--generator-output',
gyp info spawn args   'C:\\Users\\sudhir_kumar05\\mockingbird\\node_modules\\ursa\\build',
gyp info spawn args   '-Goutput_dir=.' ]
gyp info spawn C:\Program Files (x86)\MSBuild\12.0\bin\msbuild.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.
  ursaNative.cc
..\src\ursaNative.cc(157): warning C4244: 'argument' : conversion from 'ssize_t' to 'int', possible loss of data [C:\Users\sudhir_kumar05\mockingbird\node_modules\ursa\build\ursaNative.vcxproj]
..\src\ursaNative.cc(172): warning C4244: 'argument' : conversion from 'ssize_t' to 'int', possible loss of data [C:\Users\sudhir_kumar05\mockingbird\node_modules\ursa\build\ursaNative.vcxproj]
..\src\ursaNative.cc(378): warning C4267: 'initializing' : conversion from 'size_t' to 'int', possible loss of data [C:\Users\sudhir_kumar05\mockingbird\node_modules\ursa\build\ursaNative.vcxproj]
..\src\ursaNative.cc(379): warning C4267: 'initializing' : conversion from 'size_t' to 'int', possible loss of data [C:\Users\sudhir_kumar05\mockingbird\node_modules\ursa\build\ursaNative.vcxproj]
..\src\ursaNative.cc(686): warning C4267: 'argument' : conversion from 'size_t' to 'int', possible loss of data [C:\Users\sudhir_kumar05\mockingbird\node_modules\ursa\build\ursaNative.vcxproj]
..\src\ursaNative.cc(734): warning C4267: 'argument' : conversion from 'size_t' to 'int', possible loss of data [C:\Users\sudhir_kumar05\mockingbird\node_modules\ursa\build\ursaNative.vcxproj]
..\src\ursaNative.cc(779): warning C4267: 'argument' : conversion from 'size_t' to 'int', possible loss of data [C:\Users\sudhir_kumar05\mockingbird\node_modules\ursa\build\ursaNative.vcxproj]
..\src\ursaNative.cc(826): warning C4267: 'argument' : conversion from 'size_t' to 'int', possible loss of data [C:\Users\sudhir_kumar05\mockingbird\node_modules\ursa\build\ursaNative.vcxproj]
..\src\ursaNative.cc(945): warning C4267: 'argument' : conversion from 'size_t' to 'unsigned int', possible loss of data [C:\Users\sudhir_kumar05\mockingbird\node_modules\ursa\build\ursaNative.vcxproj]
..\src\ursaNative.cc(1003): warning C4267: 'argument' : conversion from 'size_t' to 'unsigned int', possible loss of data [C:\Users\sudhir_kumar05\mockingbird\node_modules\ursa\build\ursaNative.vcxproj]
  win_delay_load_hook.c
LINK : fatal error LNK1181: cannot open input file 'C:\OpenSSL-Win64\lib\libeay32.lib' [C:\Users\sudhir_kumar05\mockingbird\node_modules\ursa\build\ursaNative.vcxproj]
gyp ERR! build error
gyp ERR! stack Error: `C:\Program Files (x86)\MSBuild\12.0\bin\msbuild.exe` failed with exit code: 1
gyp ERR! stack     at ChildProcess.onExit (C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\lib\build.js:276:23)
gyp ERR! stack     at emitTwo (events.js:100:13)
gyp ERR! stack     at ChildProcess.emit (events.js:185:7)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:204:12)
gyp ERR! System Windows_NT 6.1.7601
gyp ERR! command "C:\\Program Files\\nodejs\\node.exe" "C:\\Program Files\\nodejs\\node_modules\\npm\\node_modules\\node-gyp\\bin\\node-gyp.js" "rebuild"
gyp ERR! cwd C:\Users\sudhir_kumar05\mockingbird\node_modules\ursa
gyp ERR! node -v v5.10.0
gyp ERR! node-gyp -v v3.3.1
gyp ERR! not ok
npm info lifecycle ursa@0.9.4~install: Failed to exec install script
npm WARN install:ursa@0.9.4 ursa@0.9.4 install: `node-gyp rebuild`
npm WARN install:ursa@0.9.4 Exit status 1
npm info lifecycle mockingbird@1.0.150~preinstall: mockingbird@1.0.150
npm info linkStuff mockingbird@1.0.150
npm info lifecycle mockingbird@1.0.150~install: mockingbird@1.0.150
npm info lifecycle mockingbird@1.0.150~postinstall: mockingbird@1.0.150
npm info lifecycle mockingbird@1.0.150~prepublish: mockingbird@1.0.150
npm WARN optional Skipping failed optional dependency /chokidar/fsevents:
npm WARN notsup Not compatible with your operating system or architecture: fsevents@1.0.14
npm WARN mongodb-core@1.2.32 requires a peer of kerberos@~0.0 but none was installed.
npm info ok

我尝试在 IntelliJ 终极试用版中运行相同的项目,但得到相同的错误。

【问题讨论】:

    标签: intellij-idea visual-studio-2013 npm-install


    【解决方案1】:

    我也遇到了同样的问题,答案是阅读文档。

    OpenSSL(正常,不轻量级)与您的 Node.js 具有相同的位数 安装。 OpenSSL 必须安装在特定的安装中 目录(C:\OpenSSL-Win32 或 C:\OpenSSL-Win64)如果出现错误: 找不到指定的模块。,复制 libeay32.dll 从 OpenSSL bin 目录到这个模块的 bin 目录,或 Windows\System32。

    这有一个问题 - 你需要 1.0.2(得到here)。 1.1.0 版没有 libea32.dll。

    我先后在安装 ursa 时遇到了以下问题:

    • 节点-gyp。认为这不是一个真正的问题,但在this之后重建成功
    • 编译器。我有 VS2010express 并再次出错,但现在安装 ursa MSBUILD : error MSB3428: Could not load the Visual C++ component "VCBuild.exe 尝试了一些 recipes 但只有在 VS2013express 安装后我才成功并出现另一个错误
    • SSL。使用 Open-SSL 64 1.0.2

    【讨论】:

    • 您为 1.0.2 版链接的 openSSL 网站不再公开列出该版本的下载。然而,可执行文件仍然是托管的,我不得不在该页面上搜索已注释掉的 HTML 以找到下载 URL。我不会在这里列出它,因为我不知道这会持续多久,但如果需要,您可以自己尝试。
    【解决方案2】:

    只需为 OpenSSL 安装最新(但低于 1.1)版本的 Windows 安装程序。 互联网上的直接链接被破坏。这是官网的下载页面:http://slproweb.com/products/Win32OpenSSL.html

    【讨论】:

      【解决方案3】:

      对于安装 OpenSSL 版本 1.1.0k 的 Windows,库已从 libeay32.lib 重命名为 libcrypto.dll。所以解决这个问题的简单方法是在 Windows 中使用 mklink 创建一个符号链接。在节点版本 10.13.0 的 Windows 10 上测试。

      以管理员身份启动 CMD

      cd /d C:\OpenSSL-Win64\lib
      mklink libeay32.lib libcrypto.lib
      

      输出应该匹配:

      symbolic link created for libcrypto32.lib <<===>> libcrypto.lib
      

      我已经这样做了,并且正在构建 x509,没有其他问题。

      来源: https://github.com/Southern/node-x509/issues/49#issuecomment-514265447

      【讨论】:

      • 这是最好的答案(要么做一个符号链接,要么只是用另一个名字复制文件)
      猜你喜欢
      • 2020-06-02
      • 1970-01-01
      • 1970-01-01
      • 2014-06-19
      • 1970-01-01
      • 2016-11-19
      • 2014-07-14
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多