web-dev-qa-db-ja.com

Mac OSX El Capitanでnode-gypの再構築が失敗する理由

最近、Mac OSX El Capitan v10.11.4を使用するMacを購入しました。 homebrewでノードをインストールし、ノードv6.2.2およびnpm v3.9.5を使用しています。 npm installの間にbcryptでエラーが発生しますが、これはnode-gyp rebuildエラーに起因すると考えられます。最近、xcode-select(バージョン2343)とxcode(7.3.1)を(この順序で)ダウンロードしました。

npm installを実行した後の完全なエラー出力は次のとおりです。

https://Gist.github.com/varunjayaraman/5734af617d616437cd5b3456b20bc5

何が悪いのかわかりません。私はLinuxの土地から来ましたが、ソースから自分でインストールしないことに慎重になる傾向があるので、おそらくそれがこれらの問題の原因でしょうか?とにかく、どんなアドバイスでも大歓迎です。他の人にもこのエラーが発生するのを見ましたが、彼らの解決策のどれもうまくいかないようでした(xcode-select --print-pathと入力すると、/Applications/Xcode.app/Contents/Developerが表示されます)

13
roonie

これも私を噛みました。いくつかの異なるソリューションがありましたが、そのうちの1つだけが機能しました。

最初に、 npmページ に記載されているように、XCodeコマンドラインツールがインストールされていることを確認します。

1)最も簡単なソリューションは、もちろん機能しませんでしたが(一部の人にとっては機能したように見えますが)、単に~/.node-gypディレクトリ。そのため、ショットを与えるだけでなく、node_modules dirおよび別のnpm install

2)node-gypをアンインストールして再インストールしてみてください:

Sudo npm uninstall node-gyp -g
npm uninstall node-gyp
npm install

3)しかし、トリックを行ったのは、 githubのnode-gypの問題 の解決策でした。別のバージョンのノードをインストールし、npmをそのようにインストールする必要があります。思ったより簡単ですが、かなりひどいです:

Sudo npm cache clean -f
Sudo npm install -g n
Sudo n 4.4.5
Sudo npm install npm -g
Sudo npm uninstall node-gyp -g

次に、npm installを実行してみてください。

お役に立てば幸いです!

13
kdazzle

Pythonでvirtualenvを使用している場合は、node-gypが機能するように、OS独自のpython 2インストールを使用するために、npmを無効にするか、npmをポイントする必要があります。


編集:

数日前に同じバグに遭遇しました。今回はnode-gypの周りはnotでした。私がインストールしたモジュールは、ノードのバージョン(v10)がサポートしなくなったシステムのバージョン(v3.8)とは無関係に、非常に古いバージョンのnode-gyp(v1)に依存しているようです。そのモジュールはもう必要なかったので、削除しました。または、問題のモジュールをアップグレード/ダウングレード/交換するか、ノードをアップグレード/ダウングレードすることもできます。 OPの場合、問題のモジュールは[email protected]でした。

1
Moobie

node_modulesキャッシュはNodeの最新バージョンで構築されました。キャッシュを削除し、元に戻してからパッケージを再インストールする必要がある場合があります。

rm -rf node_modules
nvm use 6
npm install
1
Brent Washburne

Node= 10以上にアップグレードする場合は、package.jsonでNode 10の古い依存関係を見つけ、これらのパッケージをより新しいものにアップグレードする必要があります。安定版、ビルド(npm/yarnインストール)。

0
Yao Li

多くの解決策を試した後、私にとっては、ノード、n、npm、nvmのアンインストールがうまくいきました。 nvmを再インストールし、それとともにノードをインストールします。私はこの答えに従っていました:

Node.jsを完全にアンインストールし、最初から再インストールする方法(Mac OS X)

苦痛で長いが、働いている。

0
Rexcirus