node.js - 如何解决 NPM 安装错误?

标签 node.js npm node-gyp

我在将网站从 Cloud9 迁移到 DigitalOcean 时遇到问题。

大多数组件似乎已经安装(尽管找不到 ase-tools 和 node-gd),但有一些组件不起作用,我在安装时遇到这些错误。

root@lospec:~/lospec# npm install
npm WARN deprecated minimatch@1.0.0: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue
npm WARN deprecated minimatch@2.0.10: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue
npm WARN prefer global node-gyp@3.3.1 should be installed with -g

> node-gd@1.4.0 install /root/lospec/node_modules/node-gd
> node-gyp rebuild

./util.sh: 1: ./util.sh: pkg-config: not found
gyp: Call to './util.sh png16' returned exit status 0 while in binding.gyp. 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/lib/node_modules/npm/node_modules/node-gyp/lib/configure.js:305:16)
gyp ERR! stack     at emitTwo (events.js:106:13)
gyp ERR! stack     at ChildProcess.emit (events.js:191:7)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:215:12)
gyp ERR! System Linux 4.4.0-63-generic
gyp ERR! command "/usr/bin/nodejs" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /root/lospec/node_modules/node-gd
gyp ERR! node -v v6.10.0
gyp ERR! node-gyp -v v3.4.0
gyp ERR! not ok
npm ERR! Linux 4.4.0-63-generic
npm ERR! argv "/usr/bin/nodejs" "/usr/bin/npm" "install"
npm ERR! node v6.10.0
npm ERR! npm  v3.10.10
npm ERR! code ELIFECYCLE

npm ERR! node-gd@1.4.0 install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the node-gd@1.4.0 install script 'node-gyp rebuild'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the node-gd package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     node-gyp rebuild
npm ERR! You can get information on how to open an issue for this project with:
npm ERR!     npm bugs node-gd
npm ERR! Or if that isn't available, you can get their info via:
npm ERR!     npm owner ls node-gd
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR!     /root/lospec/npm-debug.log

我无法确定真正导致错误的原因。我认为是 node-gd、node-gyp、pkg-config?

这是我的 package.json:http://pastebin.com/raw/saykdjT2

最佳答案

在您的机器上使用需要 native 构建 (c++) 的 npm 包时,这些类型的错误非常常见。包 node-gyp 是为您的环境构建 native 依赖项的包。我猜您可能需要在那台机器上安装 gccpython 2.7make

参见 node-gyp dependencies获取更多信息。

更新https://www.digitalocean.com/community/questions/node-gyp-rebuild-fails-on-install您可以尝试以下操作吗:

sudo npm install -g node-gyp@latest sudo npm explore -g npm -- npm i node-gyp@latest

如果这些不起作用,它表示可能删除应用程序并重新推送它可能会修复它。

关于node.js - 如何解决 NPM 安装错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42445028/

相关文章:

node.js - 安装composer-cli时出错

javascript - npm install package.json 中指定的确切包版本

c++ - 构建时的 node-gyp 链接库依赖项

node.js - 如何在没有任何崩溃日志的情况下调试崩溃?

javascript - 如何使用 webpack 请求 jquery

npm - Bootstrap4 自定义覆盖 - 预期 !default 标志为 "$body-bg"

javascript - node_modules 包如何读取项目根目录下的配置文件?

javascript - 无法使用 npm 安装 gatsby-plugin-transition-link

node.js - 在ubuntu中安装node-gd

node.js - node-gyp 应该全局安装还是本地安装?