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
> weak@0.2.2 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! weak@0.2.2 install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the weak@0.2.2 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" "weak@0.2.2"
npm ERR! node -v v0.10.15
npm ERR! npm -v 1.3.23
npm ERR! code ELIFECYCLE
npm ERR! not ok code 0
I don't have a direct dependency on weak or node-gyp but I guess it is required by my other dependencies (express,phantom,ejs,aws-sdk,moment). Anyone faced such an issue and was able to fix?
If your python version isn't the source of error, check if you have "gyp" installed. This is conflicting with the gyp version in node-gyp.
apt-get remove gyp
https://github.com/TooTallNate/node-gyp/issues/363#issuecomment-32234646
这个命令sudo apt-get install build-essential
对我有帮助。
This is what worked. You need python 2.6 during the installation.
#!/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
FWIW, I had a similar problem trying to install Protractor on Ubuntu 14.04 (DigitalOcean). Reinstalling node-gyp fixed the it:
apt-get install node-gyp
在 Ubuntu 18 上,我必须安装所需的构建库才能使其正常工作
sudo apt-get install build-essential
Here are the steps to install node-gyp successfully on a Ubuntu system:
1.First of all, install the "make" build tool in Ubuntu with the following commands:
sudo apt-get update && \
sudo apt-get install build-essential software-properties-common -y;
2. Then you need to install the a proper C/C++ compiler toolchain. We will be installing GCC here with the following commands:
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. Install python 2.7 version. (Note: Python 3 is not supported by node-gyp).
sudo apt update
sudo apt upgrade
sudo apt install python2.7 python-pip
4. And finally install, node-gyp npm package:
npm install -g node-gyp
Additional but not important: If you have any atom keyboard-layout related issue with node-gyp then install the following one more package:
sudo apt-get install libxkbfile-dev
Thats all! It should be working fine now.
I faced this issue on Ubuntu 16.04 while trying to install the wikimedia extension mathoid.
I tried everything that was suggested and nothing worked until I did:
sudo apt-get install librsvg2-2 librsvg2-dev
在 Ubuntu 10.04 上,安装 libicu 解决了我的问题。
sudo apt-get install libicu-dev
在 Fedora 20 上,重新安装 gyp 为我解决了这个问题。
sudo yum reinstall gyp
I already had build-essential
installed. I just had to run:
sudo apt install python
In my-case it was failing on Linux-mint 19.2, for some reasons on run-time gcc++ was not accessible. So by installing the build-essentials error was resolved. PS:
build-essential package is a reference for all the packages needed to compile a Debian packages. It generally includes the GCC/g++ compilers and libraries and some other utilities. Informational for list of build-essential packages can be found on build-essentials
If the error is due to " fatal error: dns_sd.h: No such file or directory 32 | #include <dns_sd.h> ", solve it by
" sudo apt-get install libavahi-compat-libdnssd-dev " , else if it is due to python2 follow @Manish Jangir method
软呢帽银蓝
rpm-ostree install make automake gcc gcc-c++
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.