在Mac OS X Mavericks更新后,使用npm进行全局安装不起作用

升级到OS X 10.9 Mavericks之后,在bash中找不到节点。 前段时间我想我已经装好了。

我决定从node.js网站使用安装程序。 它进行得很好, nodenpm变成可用的bash。 但是,全局安装软件包不起作用。

npm -g bin输出以下path/usr/local/bin

然而,在运行npm install -g karma并调用ls -la /usr/local/bin我无法看到karma可执行文件驻留的path的符号链接。

运行npm -g root返回/usr/local/lib/node_modules ,安装后可以看到karma模块在那里。

不知道我可以检查什么。 谢谢!

我发现我的所有npm安装问题的根本原因是缺lessXcode许可协议。

在Maverick更新之后,XCode也升级了,如果您不启动XCode,许可协议将会丢失。

一旦我接受了协议,安装就成功了。

由于升级到小牛之后不接受xcode许可,我也遇到了同样的问题。 我能够通过运行以下接受新的xcode许可证:

sudo xcodebuild -license

但是,npm仍然没有工作,因为符号链接没有创build,但试图重新安装说npm已经在那里。 我继续说:

brew删除npm

然后重新安装:

brew安装npm

我又回来了 不是一个重新安装的粉丝,但我认为接受Xcode许可证的需要使事情处于悬挂状态。

问题似乎已经发生,因为我试图安装以前在我的系统上的软件包。 符号链接没有创build,可能是因为这个。 一旦我删除了软件包并重新安装了它们(或试图安装我没有安装的软件包),它们就被作为符号链接添加到/usr/local/bin中。

我有同样的问题 – npm升级到小牛之后不起作用。 我尝试了所有上述步骤,但仍然卡住了。 具体来说,当我试图重新安装节点,我得到的错误:

警告:安装后步骤未成功完成您可以使用brew postinstall node再次尝试

但是运行brew postinstall node回应:

错误:权限被拒绝 – / usr / local / lib / node_modules / npm / AUTHORS

我试图删除以前安装的所有节点模块

sudo rm -rf /usr/local/lib/node_modules/

然后卸载并重新安装节点

并最终得到了节点和npm像以前一样工作。

我有同样的问题。 在一个特立独行的升级之后,npm没有工作,但节点本身是。 我没有使用最新版本,因为我们的团队喜欢使用0.8.10。

在任何情况下,nvm,node.js版本pipe理器,仍然在工作。 在这种情况下,我只是重新安装:

 $ nvm install 0.8.21 ######################################################################## 100.0% Now using node v0.8.21 $ npm Usage: npm <command> where <command> is one of: add-user, adduser, apihelp, author, bin, bugs, c, cache, completion, config, ddp, dedupe, deprecate, docs, edit, explore, faq, find, find-dupes, get, help, help-search, home, i, info, init, install, isntall, issues, la, link, list, ll, ln, login, ls, outdated, owner, pack, prefix, prune, publish, r, rb, rebuild, remove, restart, rm, root, run-script, s, se, search, set, show, shrinkwrap, star, stars, start, stop, submodule, tag, test, tst, un, uninstall, unlink, unpublish, unstar, up, update, version, view, whoami npm <cmd> -h quick help on <cmd> npm -l display full usage info npm faq commonly asked questions npm help <term> search for help on <term> npm help npm involved overview 

在nvm不工作的情况下,你可能需要重新安装,以及ymmv

我不确定我的回答是否太晚。 我发现自己处于与你不同的境地。 希望我一个小时前的经验能帮助你。

我的npm版本(npm -v)是1.4.28。 首先,我使用pipe理员帐户在计算机上安装了node.js。 然后我创build了具有pipe理员权限的用户。 当我试图检查npm运行的版本时,我没有这样做。

我search了网页,发现了这个文本。 原来的海报要求检查path设置。 我没有用自制软件安装node.js和npm,另一个软件让我两个月前头疼。 我检查了我可以运行节点。 这是因为节点位于/ usr / local / bin,所有用户都有权执行程序。 但是对于npm,它实际上是一个到../lib/node_modules/npm/bin的链接。 但是,其他用户不能访问/ usr / local / lib文件夹,只能访问pipe理员的帐户。

我“sudo -i”并授予“chmod a + x ../lib”。 令人惊讶的是,所有文件夹都有正确的执行权。 我怀疑这是一些错误。 我退出sudo并再次尝试“npm -v”。 成功。

希望有所帮助。

如果在这里发布的其他解决scheme也不适合你,你可以尝试在这个 GitHub页面上build议的方法。 根据页面上的insturctions进行完整的重新安装,我终于得到了npm(和一个应用程序,vs-mda-remote)。

编辑:这发生在从小牛更新到优胜美地。