【问题标题】:Error when installing log.io using npm使用 npm 安装 log.io 时出错
【发布时间】:2015-02-28 13:26:21
【问题描述】:

我正在尝试按照https://github.com/NarrativeScience/Log.io 的说明安装 log.io。它建议使用 npm install 命令。

npm install -g log.io

我得到的错误如下所示。我在 Mac OS 和 Ubuntu 上都试过了,都没有运气。谁能帮帮我?

> contextify@0.1.13 install /usr/local/lib/node_modules/log.io/node_modules/jquery/node_modules/contextify
> node-gyp rebuild

npm http GET https://registry.npmjs.org/cssstyle
npm http GET https://registry.npmjs.org/cssom
npm http 304 https://registry.npmjs.org/cssom
npm http 304 https://registry.npmjs.org/cssstyle
gyp: Call to 'node -e "require('nan')"' returned exit status 1. while trying to load binding.gyp
gyp ERR! configure error
gyp ERR! stack Error: `gyp` failed with exit code: 1
gyp ERR! stack     at ChildProcess.onCpExit (/usr/share/node-gyp/lib/configure.js:431:16)
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 Linux 3.13.0-32-generic
gyp ERR! command "nodejs" "/usr/bin/node-gyp" "rebuild"
gyp ERR! cwd /usr/local/lib/node_modules/log.io/node_modules/jquery/node_modules/contextify
gyp ERR! node -v v0.10.25
gyp ERR! node-gyp -v v0.10.10
gyp ERR! not ok
npm WARN This failure might be due to the use of legacy binary "node"
npm WARN For further explanations, please read
/usr/share/doc/nodejs/README.Debian

npm ERR! Error: ENOENT, chown '/usr/local/lib/node_modules/log.io/node_modules/jquery/node_modules/jsdom/node_modules/request/README.md'
npm ERR! If you need help, you may report this log at:
npm ERR!     <http://github.com/isaacs/npm/issues>
npm ERR! or email it to:
npm ERR!     <npm-@googlegroups.com>
...

【问题讨论】:

    标签: node.js installation npm


    【解决方案1】:

    我终于找到了问题所在。

    Ubuntu

    在 Ubuntu 14.04 上,node 的默认仓库 apt-get 不是 nodejs 本身,而是 ax25-node。这将在/usr/sbin/ 中生成一个默认命令node,如果您调用node(在安装期间由npm 调用),则不会执行任何操作。我删除了这个包并在 node 和 nodejs 之间创建了一个符号链接,终于解决了这个问题。

    sudo apt-get autoremove node
    sudo ln -s /usr/bin/nodejs /usr/bin/node
    sudo npm install -g log.io
    

    Mac 操作系统

    错误日志与我从 Ubuntu 得到的完全不同。在谷歌上搜索了一些关于 node-gyp 安装失败的信息后,我找到了this issue,这导致我安装了 Xcode 开发工具。不知道为什么会发生这种情况,但 Homebrew 和 Xcode 之间似乎存在一些冲突。无论如何,它终于起作用了:-)

    【讨论】:

    • Ubuntu 会为您创建链接:sudo apt-get install nodejs nodejs-legacy 不过,您仍然需要更新您的npm 版本 -- 请参阅 github.com/npm/npm/wiki/Troubleshooting#updating-node-on-linux>
    【解决方案2】:

    这看起来像是旧版本 npm 中的竞争条件。自 1.4 以来,npm 已经有了很多改进——尤其是在安装期间的冲突和竞争条件方面。您可以尝试更新您的 npm 安装吗?

    要在 Windows 上更新 npm,请按照此处的说明进行操作:https://github.com/npm/npm/wiki/Troubleshooting#upgrading-on-windows

    如果您在更新npm 后仍然看到问题,请上传您的 npm-debug.log 作为 gist http://gist.github.com?如果可能,使用至少一个 -d 标志运行 npm 以提高日志记录级别。

    谢谢!

    【讨论】:

    • 谢谢。我发现了问题。它实际上不是 npm 的一个版本,而是 Ubuntu 上的节点问题。 Mac 上的 Xcode 问题。
    【解决方案3】:

    我创建了这个安装包...

    http://tinyurl.com/kfnfng6

    1 - 下载它

    2 - 解压它(tar -xvf install_log.io.tar)

    3 - cd install_log.io

    4 - sh install.sh

    5 - 享受吧!

    这个表格简单而安静..我希望能帮助其他用户......我做什么?很简单..下载包和依赖,把所有的包放在一个包里,然后创建一个脚本......

    ;)

    【讨论】:

      猜你喜欢
      • 2014-02-17
      • 2017-09-12
      • 2015-06-01
      • 1970-01-01
      • 1970-01-01
      • 2016-06-22
      • 1970-01-01
      • 2018-11-10
      • 2018-06-03
      相关资源
      最近更新 更多