Brew 安装节点 --without-npm 失败

Jus*_* L. 6 macos terminal homebrew node.js

John Papa 的帖子“How to use npm global without sudo on OSX”之后,我正在运行

brew install node --without-npm
Run Code Online (Sandbox Code Playgroud)

我收到此信息/错误:

/usr/local > brew install node --without-npm
==> Downloading https://nodejs.org/dist/v5.10.1/node-v5.10.1.tar.xz
Already downloaded: /Library/Caches/Homebrew/node-5.10.1.tar.xz
==> Downloading https://ssl.icu-project.org/files/icu4c/56.1/icu4c-56_1-src.tgz
Already downloaded: /Library/Caches/Homebrew/node--icu4c-56.1.tgz
==> ./configure --prefix=/usr/local/Cellar/node/5.10.1 --without-npm --with-intl
==> make install
Last 15 lines from /Users/justin/Library/Logs/Homebrew/node/02.make:
#include <limits>
         ^
In file included from ../deps/gtest/src/gtest-death-test.cc:34:
In file included from ../deps/gtest/include/gtest/gtest-death-test.h:41:
In file included from ../deps/gtest/include/gtest/internal/gtest-death-test-internal.h:40:
In file included from ../deps/gtest/include/gtest/internal/gtest-internal.h:40:
../deps/gtest/include/gtest/internal/gtest-port.h:259:10: fatal error: 'ctype.h' file not found
#include <ctype.h>   // for isspace, etc
         ^
1 error generated.
make[1]: *** [/private/tmp/node20160410-11435-157r8bn/node-v5.10.1/out/Release/obj.target/gtest/deps/gtest/src/gtest-filepath.o] Error 1
make[1]: *** Waiting for unfinished jobs....
1 error generated.
make[1]: *** [/private/tmp/node20160410-11435-157r8bn/node-v5.10.1/out/Release/obj.target/gtest/deps/gtest/src/gtest-death-test.o] Error 1
make: *** [node] Error 2
Run Code Online (Sandbox Code Playgroud)

按照Homebrew 的故障排除说明,我运行了brew update两次brew doctor,但仍然没有成功。我对自制程序不熟悉,并且有一段时间没有搞乱这些东西了。知道这些错误意味着什么吗?

Ham*_*ani 4

看来您没有安装命令行开发人员工具。在使用 Homebrew 安装 Node 之前,请尝试在终端中执行以下命令:

xcode-select --install
Run Code Online (Sandbox Code Playgroud)

如果安装成功,将显示此消息:

xcode-select: error: command line tools are already installed, use "Software Update" to install updates
Run Code Online (Sandbox Code Playgroud)

安装完成后,brew再次运行命令。

ctype.h文件应该位于类似/usr/include/ctype.h.

  • 要在这个答案中添加一件事。您可能需要更新到 xCode 的最新版本。我安装了命令行工具并解决了这个错误,但最终又出现了另一个错误。查看 `brew doctor` 的输出显示 xCode 已过时。更新xCode后,构建成功。 (2认同)