在Mac 10.5.8上进行npm安装时,出现了"pkg-config: command not found"的错误提示,这与node-gyp相关。

16
我正在尝试在Mac OS X上对GitHub项目进行npm安装,但在packages.json中没有看到pkg-config。为什么node-gyp需要它?它似乎应该已经包含了它。我以为这就是node的工作方式。安装一个包并拉取所需的任何内容。我猜这些方式有所不同。还想知道它正在寻找哪个版本的pkg-config。
是的,我已经下载了tarball,但是它的Mac安装说明真的是一堆废话。它停留在./configure然后make install。但是makefile不可用,而且所有内容都在同一目录级别,但它说要进入代码目录等等。
node-gyp rebuild
/bin/sh: pkg-config: command not found gyp: 调用 'pkg-config libzmq --libs' 返回退出状态 127 。尝试加载binding.gyp时出错 gyp ERR! 配置错误 gyp ERR! 栈 错误:在尝试加载binding.gyp时,`gyp`失败,退出码为:1 gyp ERR! 栈 at ChildProcess.onCpExit (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/configure.js:343:16) gyp ERR! 栈 at ChildProcess.emit (events.js:98:17) gyp ERR! 栈 at Process.ChildProcess._handle.onexit (child_process.js:820:12) gyp ERR! 系统 Darwin 12.5.0 gyp ERR! 命令 "node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild" gyp ERR! 工作目录 /Users/Mac1/Downloads/projdirectory/node_modules/zmq gyp ERR! Node 版本 v0.10.35 gyp ERR! node-gyp 版本 v1.0.1 gyp ERR! 操作失败 npm WARN optional dep failed, continuing zmq@2.8.0
2个回答

19
这与 pkg-config npm 模块无关,而是 zmq 模块的构建失败。其中的 /bin/sh: 部分告诉你它正在尝试在你的 shell 上运行一个实际的命令,这个命令可能是 pkg-config 脚本,在你的 /usr/local/include/zmq 或者 /opt/local/include/zmq 文件夹中找到。 pkg-config 未找到的原因是 ZMQ 不是原生的节点模块,你必须确保在运行你试图运行的 npm install 前已经下载并安装了 ZMQ。
在这种情况下,你正在尝试安装 zmq 或其库之一,所有这些都要求 ZMQ 产品在你的系统上安装。
每当你在失败的 npm install 中看到 node-gyp,它就是一个好线索,提示你正在尝试安装的是你的操作系统本地工具的节点包装器。
编辑后:查看最新的 zmq 安装后,没有 pkg-config 文件夹,而是一个 pkgconfig 文件夹。
有一个报告了这个问题的 bug,但这本身不能解决 OP 的问题。如果您使用 homebrew,您可以首先运行
brew install zeromq
brew install pkgconfig

然后运行你的npm install (你安装的zmq库)

否则,你需要花些功夫从源代码重新构建zmq并在$PATH上添加前缀安装。


如何在Linux上安装? - chovy
在使用aptitude的Linux发行版上,我使用了apt-get install pkg-config命令,并且它有效地工作了。 - Adam Mazzarella

6
/bin/sh:pkg-config:找不到命令,您需要安装pkg-config。
运行以下命令进行安装: $ brew install pkg-config。 然后再次运行npm install。 $ npm install zmq

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接