Compare commits

...

3 Commits

@ -1,6 +1,6 @@
{
"name": "why-is-npm-broken",
"version": "1.0.0",
"version": "1.0.1",
"description": "A simple tool to determine why your `npm install` doesn't work",
"main": "index.js",
"scripts": {

@ -11,6 +11,11 @@ function isBrokenBuildEnvironment(code) {
return (code.indexOf("library not found for -lgcc_s.10.5") !== -1);
}
function isMissingLibtool(code) {
// testcases/3.txt
return (code.includes("Can't exec \"libtoolize\": No such file or directory"));
}
function isMissingPython(code) {
// testcases/1.txt
return (
@ -127,6 +132,8 @@ function getErrorType(code) {
return "missingEnvironment";
} else if (isBrokenBuildEnvironment(code)) {
return "brokenEnvironment";
} else if (isMissingLibtool(code)) {
return "missingLibtool";
} else if (isMissingPython(code)) {
return "missingPython";
} else if (isWrongPython(code)) {

@ -20,6 +20,11 @@ solution-viewer
li If on OS X, make sure to upgrade your installation of XCode to the latest version.
li If it still doesn't work, try reinstalling Node.js.
solution(topic="missingLibtool")
h3 <code>libtool</code> is not installed.
p One of the dependencies you tried to install (<code>{parent.offendingModule}</code>) requires <code>libtool</code> for its compilation process, but it's missing from your system.
p To solve this problem, install the <strong><code>libtool</code></strong> package through your system's package manager, and retry the <code>npm install</code>.
solution(topic="missingPython")
h3 Python is not installed.
p You will need to have Python installed, to be able to install compiled (C++) modules with NPM. It's possible that you're also missing other build tools.

@ -0,0 +1,115 @@
make: Entering directory '/home/jacob/workingdirectory/patchwork/node_modules/keyboard-layout/build'
CXX(target) Release/obj.target/keyboard-layout-manager/src/keyboard-layout-manager-linux.o
SOLINK_MODULE(target) Release/obj.target/keyboard-layout-manager.node
COPY Release/keyboard-layout-manager.node
make: Leaving directory '/home/jacob/workingdirectory/patchwork/node_modules/keyboard-layout/build'
> leveldown@1.6.0 install /home/jacob/workingdirectory/patchwork/node_modules/leveldown
> prebuild-install || node-gyp rebuild
prebuild-install info begin Prebuild-install version 2.1.1
prebuild-install info looking for local prebuild @ prebuilds/leveldown-v1.6.0-electron-v50-linux-x64.tar.gz
prebuild-install info looking for cached prebuild @ /home/jacob/.npm/_prebuilds/https-github.com-level-leveldown-releases-download-v1.6.0-leveldown-v1.6.0-electron-v50-linux-x64.tar.gz
prebuild-install info found cached prebuild
prebuild-install info unpacking @ /home/jacob/.npm/_prebuilds/https-github.com-level-leveldown-releases-download-v1.6.0-leveldown-v1.6.0-electron-v50-linux-x64.tar.gz
prebuild-install info unpack resolved to /home/jacob/workingdirectory/patchwork/node_modules/leveldown/build/Release/leveldown.node
prebuild-install info install Prebuild successfully installed!
npm WARN prefer global ssb-marked@0.7.2 should be installed with -g
> electron@1.4.16 postinstall /home/jacob/workingdirectory/patchwork/node_modules/electron
> node install.js
> sodium-prebuilt@1.0.22 install /home/jacob/workingdirectory/patchwork/node_modules/sodium-prebuilt
> prebuild --install --preinstall make
autoreconf: Entering directory `.'
autoreconf: configure.ac: not using Gettext
autoreconf: running: aclocal --force -I m4
autoreconf: configure.ac: tracing
autoreconf: running: libtoolize --copy --force
Can't exec "libtoolize": No such file or directory at /usr/share/autoconf/Autom4te/FileUtils.pm line 345, <GEN3> line 5.
autoreconf: failed to run libtoolize: No such file or directory
autoreconf: libtoolize is needed because this package uses Libtool
make: *** [configure] Error 1
Makefile:8: recipe for target 'configure' failed
prebuild ERR! build Error: make failed with exit code 2
prebuild ERR! build at Object.exports.spawnFailed (/home/jacob/workingdirectory/patchwork/node_modules/prebuild/error.js:31:10)
prebuild ERR! build at ChildProcess.<anonymous> (/home/jacob/workingdirectory/patchwork/node_modules/prebuild/util.js:116:14)
prebuild ERR! build at emitTwo (events.js:106:13)
prebuild ERR! build at ChildProcess.emit (events.js:191:7)
prebuild ERR! build at Process.ChildProcess._handle.onexit (internal/child_process.js:215:12)
npm ERR! Linux 4.4.0-72-generic
npm ERR! argv "/usr/bin/nodejs" "/usr/bin/npm" "rebuild" "--runtime=electron" "--target=1.4.3" "--abi=50" "--disturl=https://atom.io/download/atom-shell"
npm ERR! node v6.10.2
npm ERR! npm v3.10.10
npm ERR! code ELIFECYCLE
npm ERR! sodium-prebuilt@1.0.22 install: `prebuild --install --preinstall make`
npm ERR! Exit status 2
npm ERR!
npm ERR! Failed at the sodium-prebuilt@1.0.22 install script 'prebuild --install --preinstall make'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the sodium-prebuilt package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! prebuild --install --preinstall make
npm ERR! You can get information on how to open an issue for this project with:
npm ERR! npm bugs sodium-prebuilt
npm ERR! Or if that isn't available, you can get their info via:
npm ERR! npm owner ls sodium-prebuilt
npm ERR! There is likely additional logging output above.
npm ERR! Please include the following file with any support request:
npm ERR! /home/jacob/workingdirectory/patchwork/npm-debug.log
npm ERR! Linux 4.4.0-72-generic
npm ERR! argv "/usr/bin/nodejs" "/usr/bin/npm" "run" "rebuild"
npm ERR! node v6.10.2
npm ERR! npm v3.10.10
npm ERR! code ELIFECYCLE
npm ERR! ssb-patchwork@3.3.0 rebuild: `npm rebuild --runtime=electron --target=1.4.3 --abi=50 --disturl=https://atom.io/download/atom-shell`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the ssb-patchwork@3.3.0 rebuild script 'npm rebuild --runtime=electron --target=1.4.3 --abi=50 --disturl=https://atom.io/download/atom-shell'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the ssb-patchwork package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! npm rebuild --runtime=electron --target=1.4.3 --abi=50 --disturl=https://atom.io/download/atom-shell
npm ERR! You can get information on how to open an issue for this project with:
npm ERR! npm bugs ssb-patchwork
npm ERR! Or if that isn't available, you can get their info via:
npm ERR! npm owner ls ssb-patchwork
npm ERR! There is likely additional logging output above.
npm ERR! Please include the following file with any support request:
npm ERR! /home/jacob/workingdirectory/patchwork/npm-debug.log
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@^1.0.0 (node_modules/chokidar/node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.1.1: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
npm WARN ssb-patchwork@3.3.0 No repository field.
npm WARN ssb-patchwork@3.3.0 license should be a valid SPDX license expression
npm ERR! Linux 4.4.0-72-generic
npm ERR! argv "/usr/bin/nodejs" "/usr/bin/npm" "install"
npm ERR! node v6.10.2
npm ERR! npm v3.10.10
npm ERR! code ELIFECYCLE
npm ERR! ssb-patchwork@3.3.0 postinstall: `npm run rebuild`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the ssb-patchwork@3.3.0 postinstall script 'npm run rebuild'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the ssb-patchwork package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! npm run rebuild
npm ERR! You can get information on how to open an issue for this project with:
npm ERR! npm bugs ssb-patchwork
npm ERR! Or if that isn't available, you can get their info via:
npm ERR! npm owner ls ssb-patchwork
npm ERR! There is likely additional logging output above.
npm ERR! Please include the following file with any support request:
npm ERR! /home/jacob/workingdirectory/patchwork/npm-debug.log
Loading…
Cancel
Save