web-dev-qa-db-ja.com

Node-GypをUbuntuにインストールする際のエラー

npm http 200 https://registry.npmjs.org/weak/-/weak-0.2.2.tgz
npm http GET https://registry.npmjs.org/bindings
npm http 304 https://registry.npmjs.org/bindings

> [email protected] install node_modules/weak
> node-gyp rebuild

Traceback (most recent call last):
  File "/usr/lib/node_modules/npm/node_modules/node-gyp/gyp/gyp_main.py", line 18, in <module>
    sys.exit(gyp.script_main())
AttributeError: 'module' object has no attribute 'script_main'
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:337:16)
gyp ERR! stack     at ChildProcess.EventEmitter.emit (events.js:98:17)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (child_process.js:789:12)
gyp ERR! System Linux 3.11.0-15-generic
gyp ERR! command "node" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"

gyp ERR! node -v v0.10.15
gyp ERR! node-gyp -v v0.12.1
gyp ERR! not ok 
npm ERR! [email protected] install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the [email protected] install script.
npm ERR! This is most likely a problem with the weak 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 their info via:
npm ERR!     npm owner ls weak
npm ERR! There is likely additional logging output above.

npm ERR! System Linux 3.11.0-15-generic
npm ERR! command "node" "/usr/bin/npm" "install" "[email protected]"
npm ERR! node -v v0.10.15
npm ERR! npm -v 1.3.23
npm ERR! code ELIFECYCLE

npm ERR! not ok code 0

Weakまたはnode-gypに直接依存しているわけではありませんが、他の依存関係(express、phantom、ejs、aws-sdk、moment)に必要であると思います。誰もがこのような問題に直面し、修正できましたか?

33

これが機能しました。インストール中にpython 2.6が必要です。

#!/bin/bash
#On Ubuntu Saucy:
Sudo add-apt-repository ppa:fkrull/deadsnakes
Sudo apt-get update
Sudo apt-get install python2.6
Sudo update-alternatives --install /usr/bin/python python /usr/bin/python2.6 20
Sudo update-alternatives --install /usr/bin/python python /usr/bin/python2.7 10

#you can switch between 2.6 & 2.7 using:
Sudo update-alternatives --config python

#Btw I installed node using ppa:chris-lea/node.js

https://github.com/TooTallNate/node-gyp/issues/36

23

pythonバージョンがエラーの原因ではない場合、「gyp」がインストールされているかどうかを確認してください。これは、node-gypのgypバージョンと競合しています。

apt-get remove gyp

https://github.com/TooTallNate/node-gyp/issues/363#issuecomment-32234646

33
P.Scheit

このコマンドSudo apt-get install build-essential私の場合に役立ちました。

21
xpepermint

FWIW、Ubuntu 14.04(DigitalOcean)にProtractorをインストールしようとすると、同様の問題が発生しました。 node-gypを再インストールすると修正されました:

apt-get install node-gyp
17
Brine

ubuntu 18では、動作させるために必要なビルドライブラリをインストールする必要がありました

Sudo apt-get install build-essential
4
Bheru Lal Lohar

Wikimedia拡張機能mathoidをインストールしようとしたときに、Ubuntu 16.04でこの問題に直面しました。

私は提案されたすべてを試しましたが、私がやるまで何も機能しませんでした:

Sudo apt-get install librsvg2-2 librsvg2-dev
3
joshuar

Ubuntuシステムにnode-gypを正常にインストールする手順は次のとおりです。

1.まず、次のコマンドを使用してUbuntuに「make」ビルドツールをインストールします。

Sudo apt-get update && \
Sudo apt-get install build-essential software-properties-common -y;

2.次に、適切なC/C++コンパイラツールチェーンをインストールする必要があります。次のコマンドを使用して、ここにGCCをインストールします。

Sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y && \
Sudo apt-get update && \
Sudo apt-get install gcc-snapshot -y && \
Sudo apt-get update && \
Sudo apt-get install gcc-6 g++-6 -y && \
Sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-6 60 --slave 
/usr/bin/g++ g++ /usr/bin/g++-6 && \
Sudo apt-get install gcc-4.8 g++-4.8 -y && \
Sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 60 --slave 
/usr/bin/g++ g++ /usr/bin/g++-4.8;

3.インストールpython 2.7バージョン。(注:Python 3はnode-gypではサポートされていません)。

Sudo apt update
Sudo apt upgrade
Sudo apt install python2.7 python-pip

4.最後に、node-gyp npmパッケージをインストールします。

npm install -g node-gyp

追加であるが重要ではない: node-gypにatom keyboard-layout関連の問題がある場合は、次のパッケージをもう1つインストールします。

Sudo apt-get install libxkbfile-dev

それで全部です!これで問題なく動作するはずです。

2
Manish Jangir

Ubuntu 10.04では、libicuをインストールすることで問題が解決しました。

Sudo apt-get install libicu-dev

2
Sagar Ranglani

Fedora 20では、gypを再インストールするとこれが修正されました。

Sudo yum reinstall gyp
1
mwcz