leveldown: Failed at the leveldown@1.4.6 install script 'prebuild --install'

I’m trying to install leveldown, but I keep getting the following error:

npm ERR! Windows_NT 6.2.9200
npm ERR! argv "C:\\Program Files\\nodejs\\node.exe" "C:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js" "link"
npm ERR! node v0.10.26
npm ERR! npm  v3.8.5
npm ERR! code ELIFECYCLE

npm ERR! leveldown@1.4.6 install: `prebuild --install`
npm ERR! Exit status 2
npm ERR!
npm ERR! Failed at the leveldown@1.4.6 install script 'prebuild --install'.
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 leveldown package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     prebuild --install
npm ERR! You can get information on how to open an issue for this project with:
npm ERR!     npm bugs leveldown
npm ERR! Or if that isn't available, you can get their info via:
npm ERR!     npm owner ls leveldown
npm ERR! There is likely additional logging output above.

Any ideas what the issue may be?

Also, I did some searching around and noticed this person having a similar problem: https://github.com/Level/leveldown/issues/233

Here’s the result of me running npm ls:

jawn@0.0.1 C:\Users\B-rad\Documents\codeforphilly\jawn
+-- fs@0.0.2
+-- hypercore@1.8.0
| +-- bitfield@1.1.2
| +-- brfs@1.4.3
| | +-- quote-stream@1.0.2
| | | `-- buffer-equal@0.0.1
| | `-- static-module@1.3.1
| |   +-- duplexer2@0.0.2
| |   | `-- readable-stream@1.1.14
| |   |   `-- isarray@0.0.1
| |   +-- escodegen@1.3.3
| |   | +-- esprima@1.1.1
| |   | +-- estraverse@1.5.1
| |   | +-- esutils@1.0.0
| |   | `-- source-map@0.1.43
| |   |   `-- amdefine@1.0.0
| |   +-- falafel@1.2.0
| |   | +-- acorn@1.2.2
| |   | `-- isarray@0.0.1
| |   +-- object-inspect@0.4.0
| |   +-- quote-stream@0.0.0
| |   | `-- minimist@0.0.8
| |   +-- readable-stream@1.0.34
| |   | `-- isarray@0.0.1
| |   +-- shallow-copy@0.0.1
| |   +-- static-eval@0.2.4
| |   | `-- escodegen@0.0.28
| |   |   +-- esprima@1.0.4
| |   |   `-- estraverse@1.3.2
| |   `-- through2@0.4.2
| |     `-- xtend@2.1.2
| |       `-- object-keys@0.4.0
| +-- buffer-equals@1.0.3
| +-- bulk-write-stream@1.1.1
| | `-- readable-stream@1.1.14
| |   `-- isarray@0.0.1
| +-- debug@2.2.0
| | `-- ms@0.7.1
| +-- duplexify@3.4.3
| | `-- end-of-stream@1.0.0
| +-- flat-tree@1.4.0
| +-- from2@2.1.1
| +-- last-one-wins@1.0.4
| +-- length-prefixed-stream@1.5.0
| | `-- varint@4.0.0
| +-- merkle-tree-stream@2.0.0
| +-- numeric-id-map@1.1.0
| +-- protocol-buffers@3.1.6
| | +-- generate-function@2.0.0
| | +-- generate-object-property@1.2.0
| | | `-- is-property@1.0.2
| | +-- protocol-buffers-schema@2.2.0
| | `-- signed-varint@2.0.0
| |   `-- varint@3.0.1
| +-- sublevel-prefixer@1.0.0
| +-- subleveldown@2.1.0
| | +-- abstract-leveldown@2.6.0
| | `-- level-option-wrap@1.1.0
| |   `-- defined@0.0.0
| +-- thunky@0.1.0
| `-- uint64be@1.0.1
+-- hyperkv@1.7.0 extraneous
+-- hyperlog@4.10.0 extraneous
+-- UNMET DEPENDENCY level@~1.4.0
+-- level-packager@1.2.0 extraneous
+-- memdb@1.3.1
| +-- levelup@1.3.1
| | +-- deferred-leveldown@1.2.1
| | | `-- abstract-leveldown@2.4.1
| | +-- level-codec@6.1.0
| | +-- level-errors@1.0.4
| | | `-- errno@0.1.4
| | |   `-- prr@0.0.0
| | +-- level-iterator-stream@1.3.1
| | | `-- readable-stream@1.1.14
| | |   `-- isarray@0.0.1
| | +-- prr@1.0.1
| | `-- semver@5.1.0
| `-- memdown@1.1.2
|   +-- functional-red-black-tree@1.0.1
|   `-- ltgt@1.0.2
+-- mississippi@1.2.0
| +-- concat-stream@1.5.1
| | `-- typedarray@0.0.6
| +-- end-of-stream@1.1.0
| | `-- once@1.3.3
| |   `-- wrappy@1.0.1
| +-- flush-write-stream@1.0.0
| +-- pump@1.0.1
| | `-- end-of-stream@1.1.0
| +-- pumpify@1.3.4
| `-- stream-each@1.1.2
|   `-- end-of-stream@1.1.0
+-- parse-input-stream@1.0.1
| +-- csv-parser@1.9.3
| | +-- generate-function@1.1.0
| | `-- ndjson@1.4.3
| |   +-- split2@0.2.1
| |   | `-- through2@0.6.5
| |   |   `-- readable-stream@1.0.34
| |   |     `-- isarray@0.0.1
| |   `-- through2@0.6.5
| |     `-- readable-stream@1.0.34
| |       `-- isarray@0.0.1
| +-- detect-csv@1.1.0
| +-- detect-json-style@1.0.2
| +-- JSONStream@1.1.1
| | `-- jsonparse@1.2.0
| `-- peek-stream@1.1.1
|   `-- through2@0.5.1
|     +-- readable-stream@1.0.34
|     | `-- isarray@0.0.1
|     `-- xtend@3.0.0
+-- path@0.12.7
| +-- process@0.11.3
| `-- util@0.10.3
+-- standard@6.0.8
| +-- eslint@2.2.0
| | +-- chalk@1.1.3
| | | +-- ansi-styles@2.2.1
| | | +-- escape-string-regexp@1.0.5
| | | +-- has-ansi@2.0.0
| | | +-- strip-ansi@3.0.1
| | | `-- supports-color@2.0.0
| | +-- concat-stream@1.4.10
| | | `-- readable-stream@1.1.14
| | |   `-- isarray@0.0.1
| | +-- doctrine@1.2.1
| | | `-- esutils@1.1.6
| | +-- es6-map@0.1.3
| | | +-- d@0.1.1
| | | +-- es5-ext@0.10.11
| | | +-- es6-iterator@2.0.0
| | | +-- es6-set@0.1.4
| | | +-- es6-symbol@3.0.2
| | | `-- event-emitter@0.3.4
| | +-- escope@3.6.0
| | | +-- es6-weak-map@2.0.1
| | | +-- esrecurse@4.1.0
| | | | `-- estraverse@4.1.1
| | | `-- estraverse@4.2.0
| | +-- espree@3.1.4
| | | +-- acorn@3.1.0
| | | `-- acorn-jsx@3.0.1
| | |   `-- acorn@3.1.0
| | +-- estraverse@4.2.0
| | +-- estraverse-fb@1.3.1
| | +-- esutils@2.0.2
| | +-- file-entry-cache@1.2.4
| | | +-- flat-cache@1.0.10
| | | | +-- del@2.2.0
| | | | | +-- globby@4.0.0
| | | | | | +-- array-union@1.0.1
| | | | | | | `-- array-uniq@1.0.2
| | | | | | +-- arrify@1.0.1
| | | | | | `-- glob@6.0.4
| | | | | |   `-- minimatch@3.0.0
| | | | | +-- is-path-cwd@1.0.0
| | | | | +-- is-path-in-cwd@1.0.0
| | | | | | `-- is-path-inside@1.0.0
| | | | | +-- pify@2.3.0
| | | | | +-- pinkie-promise@2.0.1
| | | | | | `-- pinkie@2.0.4
| | | | | `-- rimraf@2.5.2
| | | | |   `-- glob@7.0.3
| | | | |     `-- minimatch@3.0.0
| | | | +-- graceful-fs@4.1.4
| | | | +-- read-json-sync@1.1.1
| | | | `-- write@0.2.1
| | | `-- object-assign@4.1.0
| | +-- glob@6.0.4
| | | `-- minimatch@3.0.0
| | +-- globals@8.18.0
| | +-- ignore@2.2.19
| | +-- inquirer@0.12.0
| | | +-- ansi-escapes@1.4.0
| | | +-- ansi-regex@2.0.0
| | | +-- cli-cursor@1.0.2
| | | | `-- restore-cursor@1.0.1
| | | |   +-- exit-hook@1.1.1
| | | |   `-- onetime@1.1.0
| | | +-- cli-width@2.1.0
| | | +-- figures@1.6.0
| | | +-- readline2@1.0.1
| | | | +-- code-point-at@1.0.0
| | | | | `-- number-is-nan@1.0.0
| | | | +-- is-fullwidth-code-point@1.0.0
| | | | `-- mute-stream@0.0.5
| | | +-- run-async@0.1.0
| | | +-- rx-lite@3.1.2
| | | `-- string-width@1.0.1
| | +-- is-my-json-valid@2.13.1
| | | `-- jsonpointer@2.0.0
| | +-- is-resolvable@1.0.0
| | | `-- tryit@1.0.2
| | +-- js-yaml@3.6.0
| | | +-- argparse@1.0.7
| | | | `-- sprintf-js@1.0.3
| | | `-- esprima@2.7.2
| | +-- json-stable-stringify@1.0.1
| | | `-- jsonify@0.0.0
| | +-- lodash@4.12.0
| | +-- mkdirp@0.5.1
| | | `-- minimist@0.0.8
| | +-- optionator@0.8.1
| | | +-- deep-is@0.1.3
| | | +-- fast-levenshtein@1.1.3
| | | +-- levn@0.3.0
| | | +-- prelude-ls@1.1.2
| | | +-- type-check@0.3.2
| | | `-- wordwrap@1.0.0
| | +-- path-is-absolute@1.0.0
| | +-- path-is-inside@1.0.1
| | +-- pluralize@1.2.1
| | +-- progress@1.1.8
| | +-- require-uncached@1.0.2
| | | +-- caller-path@0.1.0
| | | | `-- callsites@0.2.0
| | | `-- resolve-from@1.0.1
| | +-- shelljs@0.5.3
| | +-- strip-json-comments@1.0.4
| | +-- table@3.7.8
| | | +-- bluebird@3.3.5
| | | +-- slice-ansi@0.0.4
| | | +-- tv4@1.2.7
| | | `-- xregexp@3.1.0
| | +-- text-table@0.2.0
| | `-- user-home@2.0.0
| |   `-- os-homedir@1.0.1
| +-- eslint-config-standard@5.1.0
| +-- eslint-config-standard-jsx@1.1.1
| +-- eslint-plugin-promise@1.1.0
| +-- eslint-plugin-react@4.3.0
| +-- eslint-plugin-standard@1.3.2
| +-- standard-engine@3.3.1
| | +-- defaults@1.0.3
| | | `-- clone@1.0.2
| | +-- deglob@1.1.1
| | | +-- find-root@0.1.2
| | | +-- glob@6.0.4
| | | | `-- minimatch@3.0.0
| | | +-- ignore@3.1.2
| | | +-- run-parallel@1.1.6
| | | `-- uniq@1.0.1
| | +-- find-root@1.0.0
| | +-- get-stdin@5.0.1
| | +-- multiline@1.0.2
| | | `-- strip-indent@1.0.1
| | |   `-- get-stdin@4.0.1
| | `-- pkg-config@1.1.1
| |   `-- debug-log@1.0.0
| `-- xtend@4.0.1
+-- tape@4.5.1
| +-- deep-equal@1.0.1
| +-- defined@1.0.0
| +-- function-bind@1.1.0
| +-- glob@7.0.3
| | +-- inflight@1.0.4
| | `-- minimatch@3.0.0
| |   `-- brace-expansion@1.1.4
| |     +-- balanced-match@0.4.1
| |     `-- concat-map@0.0.1
| +-- has@1.0.1
| +-- inherits@2.0.1
| +-- minimist@1.2.0
| +-- object-inspect@1.1.0
| +-- resolve@1.1.7
| +-- resumer@0.0.0
| +-- string.prototype.trim@1.1.2
| | +-- define-properties@1.1.2
| | | +-- foreach@2.0.5
| | | `-- object-keys@1.0.9
| | `-- es-abstract@1.5.0
| |   +-- es-to-primitive@1.1.1
| |   | +-- is-date-object@1.0.1
| |   | `-- is-symbol@1.0.1
| |   +-- is-callable@1.1.3
| |   `-- is-regex@1.0.3
| `-- through@2.3.8
`-- through2@2.0.1
  `-- readable-stream@2.0.6
    +-- core-util-is@1.0.2
    +-- isarray@1.0.0
    +-- process-nextick-args@1.0.7
    +-- string_decoder@0.10.31
    `-- util-deprecate@1.0.2

npm ERR! missing: level@~1.4.0, required by jawn@0.0.1
npm ERR! extraneous: hyperkv@1.7.0 C:\Users\B-rad\Documents\codeforphilly\jawn\node_modules\hyperkv
npm ERR! extraneous: hyperlog@4.10.0 C:\Users\B-rad\Documents\codeforphilly\jawn\node_modules\hyperlog
npm ERR! extraneous: level-packager@1.2.0 C:\Users\B-rad\Documents\codeforphilly\jawn\node_modules\level-packager

About this issue

  • Original URL
  • State: closed
  • Created 8 years ago
  • Comments: 19 (11 by maintainers)

Most upvoted comments

Just had this issue and fixed it on Windows 10 by:

  1. Setting npm to use Python 2.7 instead of 3.5 with npm config set python python2.7
  2. Installing C++ part of Visual Studio 2015 Community – Settings>Add or Remove Programs>Modify VS2015 etc…

@ralphtheninja @nrkn we can also automate this with AppVeyor. I created a dummy project as a test, which produces prebuilds for each commit. Tagged commits trigger an upload. Seems to be working well.