-->

npm install sqlite3 error

2019-02-17 07:20发布

问题:

i am not sure why, but i am having issues while installing any of the packages using npm. i tried to install sqlite3 and it gave error as follows:

    naphstor@ubuntu:~$ sudo npm install sqlite3
    [sudo] password for naphstor: 

    > sqlite3@2.0.15 preinstall /home/naphstor/node_modules/sqlite3
    > node-waf clean || true; node-waf configure build

    Nothing to clean (project not configured)
    Setting srcdir to                        : /home/naphstor/node_modules/sqlite3 
    Setting blddir to                        : /home/naphstor/node_modules/sqlite3/build 
    Checking for program g++ or c++          : /usr/bin/g++ 
    Checking for program cpp                 : /usr/bin/cpp 
    Checking for program ar                  : /usr/bin/ar 
    Checking for program ranlib              : /usr/bin/ranlib 
    Checking for g++                         : ok  
    Checking for node path                   : not found 
    Checking for node prefix                 : ok /usr/local 
    Checking for sqlite3                     : not found 
    Checking for library sqlite3             : not found 
    /home/naphstor/node_modules/sqlite3/wscript:29: error: the configuration failed (see             '/home/naphstor/node_modules/sqlite3/build/config.log')                                            
    npm ERR! error installing sqlite3@2.0.15 Error: sqlite3@2.0.15 preinstall: `node-waf        clean || true; node-waf configure build`
    npm ERR! error installing sqlite3@2.0.15 `sh "-c" "node-waf clean || true; node-waf configure build"` failed with 1
    npm ERR! error installing sqlite3@2.0.15     at ChildProcess.<anonymous>  (/usr/local/lib/node_modules/npm/lib/utils/exec.js:49:20)
    npm ERR! error installing sqlite3@2.0.15     at ChildProcess.emit (events.js:70:17)
    npm ERR! error installing sqlite3@2.0.15     at maybeExit (child_process.js:359:16)
    npm ERR! error installing sqlite3@2.0.15     at Process.onexit               (child_process.js:395:5)
    npm ERR! sqlite3@2.0.15 preinstall: `node-waf clean || true; node-waf configure  build`
    npm ERR! `sh "-c" "node-waf clean || true; node-waf configure build"` failed with 1
    npm ERR! 
    npm ERR! Failed at the sqlite3@2.0.15 preinstall script.
    npm ERR! This is most likely a problem with the sqlite3 package,
    npm ERR! not with npm itself.
    npm ERR! Tell the author that this fails on your system:
    npm ERR!     node-waf clean || true; node-waf configure build
    npm ERR! You can get their info via:
    npm ERR!     npm owner ls sqlite3
    npm ERR! There is likely additional logging output above.
    npm ERR! 
    npm ERR! System Linux 3.0.0-12-generic
    npm ERR! command "node" "/usr/local/bin/npm" "install" "sqlite3"
    npm ERR! cwd /home/naphstor
    npm ERR! node -v v0.5.11-pre
    npm ERR! npm -v 1.0.106
    npm ERR! code ELIFECYCLE
    npm ERR! 
    npm ERR! Additional logging details can be found in:
    npm ERR!     /home/naphstor/npm-debug.log
    npm not ok
    naphstor@ubuntu:~$ 

any idea why is it like that. it shows same kind of error in installing any of the other packages.

I can do it with a workaround like "git clone git://github.com/developmentseed/node-sqlite3.git" but was wondering why npm gives error while installing any of these packages.

回答1:

This can be fixed by forcing SQLite3 to compile. npm install sqlite3 --build-from-source

Make sure you have these following dependencies installed

  1. python-software-properties
  2. python
  3. g++
  4. make
  5. build-essential

or run sudo npm install -g node-gyp

You will find more informations there (SQlite3 section): http://support.ghost.org/troubleshooting/



回答2:

Try updating npm. I just tested it with the latest version, and it worked.

Alternatively, try one of these packages:

https://github.com/grumdrig/node-sqlite
https://github.com/orlandov/node-sqlite



回答3:

I faced this problem as well then i removed node js what i downloaded and installed from ubuntu repos and downloaded source code from official node js site and compiled after it again tried to install sqlite without problem it worked i advise u to update your node and npm version as well