8

我不知道为什么,但我在使用 npm 安装任何软件包时遇到问题。我试图安装 sqlite3,它给出的错误如下:

    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:~$ 

知道为什么会这样。它在安装任何其他软件包时显示相同类型的错误。

我可以使用“git clone git://github.com/developmentseed/node-sqlite3.git”之类的解决方法来做到这一点,但想知道为什么 npm 在安装这些软件包时会出错。

4

5 回答 5

7

这可以通过强制 SQLite3 编译来解决。 npm install sqlite3 --build-from-source

确保安装了以下依赖项

  1. 蟒蛇软件属性
  2. Python
  3. 克++
  4. 制作
  5. 构建必备

或运行sudo npm install -g node-gyp

您将在那里找到更多信息(SQlite3 部分):http: //support.ghost.org/troubleshooting/

于 2015-02-04T21:43:48.313 回答
2

节点版本可能是问题,因此对于节点 10.x 及更高版本,只需安装 sqlite3@4.1.1,如指定版本

于 2021-02-07T13:19:10.313 回答
0

尝试更新 npm。我刚刚用最新版本测试了它,它工作正常。

或者,尝试以下软件包之一:

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

于 2012-06-14T20:01:29.590 回答
0

我也遇到了这个问题然后我删除了我从 ubuntu repos 下载和安装的 node js 并从官方 node js 站点下载了源代码 并在它再次尝试安装 sqlite 后编译它没有问题我建议你更新你的 node 和 npm版本也是

于 2015-06-29T09:04:50.813 回答
0

这对我来说是一个权限问题。我在错误之前看到了这一行:

gyp WARN EACCES current user ("ubuntu") does not have permission to access the dev dir "/root/.cache/node-gyp/14.15.4"

所以我当时chmod -R 777 /root就这样做了npm i sqlite3

于 2021-01-25T19:10:26.137 回答