在 node.js 中安装 sqlite3 时出错 [英] Error installing sqlite3 in node.js

查看:207
本文介绍了在 node.js 中安装 sqlite3 时出错的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在 node.js 中安装包时遇到问题.我的 npm 版本是 2.14.3,我需要安装 sqlite3 包.在我的项目路径中,我使用以下命令:npm install sqlite3 --save"我有下一个错误:

I have a problem installing package in node.js. My version of npm is 2.14.3 and I need to install sqlite3 package. In my proyect path Im usign this command: "npm install sqlite3 --save" I have the next error:

npm WARN package.json node-sqlite@1.0.1 无描述 npm WARNpackage.json node-sqlite@1.0.1 没有存储库字段.警告package.json node-sqlite@1.0.1 没有 README 数据 npm WARN package.jsonnode-sqlite@1.0.1 没有许可证字段./

npm WARN package.json node-sqlite@1.0.1 No description npm WARN package.json node-sqlite@1.0.1 No repository field. npm WARN package.json node-sqlite@1.0.1 No README data npm WARN package.json node-sqlite@1.0.1 No license field. /

sqlite3@3.1.8 安装/home/pi/Desktop/node-sqlite_Sockets/node_modules/sqlite3node-pre-gyp install --fallback-to-build node-pre-gyp ERR!尝试下载(403):https://mapbox-node-binary.s3.amazonaws.com/sqlite3/v3.1.8/node-v46-linux-arm.tar.gz node-pre-gyp ERR!没有为 sqlite3@3.1.8 和node@4.1.0 (node-v46 ABI)(回退到源编译node-gyp) make: 进入目录'/home/pi/Desktop/node-sqlite_Sockets/node_modules/sqlite3/build'行动 deps_sqlite3_gyp_action_before_build_target_unpack_sqlite_dep发布/obj/gen/sqlite-autoconf-3150000/sqlite3.c TOUCH发布/obj.target/deps/action_before_build.stamp CC(target)发布/obj.target/sqlite3/gen/sqlite-autoconf-3150000/sqlite3.oRelease/obj/gen/sqlite-autoconf-3150000/sqlite3.c:199451:1: 致命错误:打开依赖文件./Release/.deps/Release/obj.target/sqlite3/gen/sqlite-autoconf-3150000/sqlite3.o.d.raw:没有这样的文件或目录编译终止.deps/sqlite3.target.mk:120: 目标配方'发布/obj.target/sqlite3/gen/sqlite-autoconf-3150000/sqlite3.o'制作失败:***[发布/obj.target/sqlite3/gen/sqlite-autoconf-3150000/sqlite3.o]错误 1 ​​make:离开目录'/home/pi/Desktop/node-sqlite_Sockets/node_modules/sqlite3/build' gyp呃!构建错误 gyp ERR!堆栈错误:make 失败,退出代码:2 吉普错误!ChildProcess.onExit 处的堆栈(/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:270:23)吉普错误!堆栈在emitTwo (events.js:87:13) gyp ERR!堆栈在ChildProcess.emit (events.js:172:7) gyp ERR!堆栈在Process.ChildProcess._handle.onexit (internal/child_process.js:200:12)吉普错误!系统 Linux 4.4.21-v7+ gyp ERR!命令/usr/local/bin/node"/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js"构建"--fallback-to-build"--module=/home/pi/Desktop/node-sqlite_Sockets/node_modules/sqlite3/lib/binding/node-v46-linux-arm/node_sqlite3.node"--module_name=node_sqlite3"--module_path=/home/pi/Desktop/node-sqlite_Sockets/node_modules/sqlite3/lib/binding/node-v46-linux-arm"吉普错误!cwd/home/pi/Desktop/node-sqlite_Sockets/node_modules/sqlite3吉普错误!节点 -v v4.1.0 gyp 错误!node-gyp -v v3.0.3 gyp 错误!不好节点预gyp ERR!构建错误 node-pre-gyp ERR!堆栈错误:失败执行'/usr/local/bin/node/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js构建 --fallback-to-build--module=/home/pi/Desktop/node-sqlite_Sockets/node_modules/sqlite3/lib/binding/node-v46-linux-arm/node_sqlite3.node--module_name=node_sqlite3 --module_path=/home/pi/Desktop/node-sqlite_Sockets/node_modules/sqlite3/lib/binding/node-v46-linux-arm'(1) node-pre-gyp ERR!ChildProcess 中的堆栈.(/home/pi/Desktop/node-sqlite_Sockets/node_modules/sqlite3/node_modules/node-pre-gyp/lib/util/compile.js:83:29)节点预gyp ERR!堆栈在emitTwo (events.js:87:13) node-pre-gyp呃!堆栈在 ChildProcess.emit (events.js:172:7) node-pre-gyp呃!堆栈在可能关闭(内部/child_process.js:817:16)节点预gyp ERR!堆栈在 Process.ChildProcess._handle.onexit(internal/child_process.js:211:5) node-pre-gyp ERR!系统 Linux4.4.21-v7+ node-pre-gyp ERR!命令/usr/local/bin/node"/home/pi/Desktop/node-sqlite_Sockets/node_modules/sqlite3/node_modules/.bin/node-pre-gyp"安装"--fallback-to-build" node-pre-gyp ERR!cwd/home/pi/Desktop/node-sqlite_Sockets/node_modules/sqlite3 node-pre-gyp呃!node -v v4.1.0 node-pre-gyp ERR!node-pre-gyp -v v0.6.31节点预gyp ERR!不行 无法执行'/usr/local/bin/node/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js构建 --fallback-to-build--module=/home/pi/Desktop/node-sqlite_Sockets/node_modules/sqlite3/lib/binding/node-v46-linux-arm/node_sqlite3.node--module_name=node_sqlite3 --module_path=/home/pi/Desktop/node-sqlite_Sockets/node_modules/sqlite3/lib/binding/node-v46-linux-arm'(1) npm 错误!Linux 4.4.21-v7+ npm ERR!argv "/usr/local/bin/node""/usr/local/bin/npm" "install" "sqlite3" "--save" npm ERR!节点 v4.1.0npm 错误!npm v2.14.3 npm ERR!代码 ELIFECYCLE npm ERR!sqlite3@3.1.8安装:node-pre-gyp install --fallback-to-build npm ERR!出口状态 1 npm ERR!npm 错误!sqlite3@3.1.8 安装脚本失败'node-pre-gyp install --fallback-to-build'.npm 错误!这是最可能是 sqlite3 包的问题,​​npm ERR!不使用 npm本身.npm 错误!告诉作者这在你的系统上失败了:npm呃!node-pre-gyp install --fallback-to-build npm ERR!你可以得到他们的信息来自:npm ERR!npm 所有者 ls sqlite3 npm ERR!有上面可能有额外的日志输出.npm 错误!请包括以下文件包含任何支持请求:npm ERR!
/home/pi/Desktop/node-sqlite_Sockets/npm-debug.log

sqlite3@3.1.8 install /home/pi/Desktop/node-sqlite_Sockets/node_modules/sqlite3 node-pre-gyp install --fallback-to-build node-pre-gyp ERR! Tried to download(403): https://mapbox-node-binary.s3.amazonaws.com/sqlite3/v3.1.8/node-v46-linux-arm.tar.gz node-pre-gyp ERR! Pre-built binaries not found for sqlite3@3.1.8 and node@4.1.0 (node-v46 ABI) (falling back to source compile with node-gyp) make: Entering directory '/home/pi/Desktop/node-sqlite_Sockets/node_modules/sqlite3/build' ACTION deps_sqlite3_gyp_action_before_build_target_unpack_sqlite_dep Release/obj/gen/sqlite-autoconf-3150000/sqlite3.c TOUCH Release/obj.target/deps/action_before_build.stamp CC(target) Release/obj.target/sqlite3/gen/sqlite-autoconf-3150000/sqlite3.o Release/obj/gen/sqlite-autoconf-3150000/sqlite3.c:199451:1: fatal error: opening dependency file ./Release/.deps/Release/obj.target/sqlite3/gen/sqlite-autoconf-3150000/sqlite3.o.d.raw: No such file or directory compilation terminated. deps/sqlite3.target.mk:120: recipe for target 'Release/obj.target/sqlite3/gen/sqlite-autoconf-3150000/sqlite3.o' failed make: *** [Release/obj.target/sqlite3/gen/sqlite-autoconf-3150000/sqlite3.o] Error 1 make: Leaving directory '/home/pi/Desktop/node-sqlite_Sockets/node_modules/sqlite3/build' gyp ERR! build error gyp ERR! stack Error: make failed with exit code: 2 gyp ERR! stack at ChildProcess.onExit (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:270:23) gyp ERR! stack at emitTwo (events.js:87:13) gyp ERR! stack at ChildProcess.emit (events.js:172:7) gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:200:12) gyp ERR! System Linux 4.4.21-v7+ gyp ERR! command "/usr/local/bin/node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "build" "--fallback-to-build" "--module=/home/pi/Desktop/node-sqlite_Sockets/node_modules/sqlite3/lib/binding/node-v46-linux-arm/node_sqlite3.node" "--module_name=node_sqlite3" "--module_path=/home/pi/Desktop/node-sqlite_Sockets/node_modules/sqlite3/lib/binding/node-v46-linux-arm" gyp ERR! cwd /home/pi/Desktop/node-sqlite_Sockets/node_modules/sqlite3 gyp ERR! node -v v4.1.0 gyp ERR! node-gyp -v v3.0.3 gyp ERR! not ok node-pre-gyp ERR! build error node-pre-gyp ERR! stack Error: Failed to execute '/usr/local/bin/node /usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js build --fallback-to-build --module=/home/pi/Desktop/node-sqlite_Sockets/node_modules/sqlite3/lib/binding/node-v46-linux-arm/node_sqlite3.node --module_name=node_sqlite3 --module_path=/home/pi/Desktop/node-sqlite_Sockets/node_modules/sqlite3/lib/binding/node-v46-linux-arm' (1) node-pre-gyp ERR! stack at ChildProcess. (/home/pi/Desktop/node-sqlite_Sockets/node_modules/sqlite3/node_modules/node-pre-gyp/lib/util/compile.js:83:29) node-pre-gyp ERR! stack at emitTwo (events.js:87:13) node-pre-gyp ERR! stack at ChildProcess.emit (events.js:172:7) node-pre-gyp ERR! stack at maybeClose (internal/child_process.js:817:16) node-pre-gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:211:5) node-pre-gyp ERR! System Linux 4.4.21-v7+ node-pre-gyp ERR! command "/usr/local/bin/node" "/home/pi/Desktop/node-sqlite_Sockets/node_modules/sqlite3/node_modules/.bin/node-pre-gyp" "install" "--fallback-to-build" node-pre-gyp ERR! cwd /home/pi/Desktop/node-sqlite_Sockets/node_modules/sqlite3 node-pre-gyp ERR! node -v v4.1.0 node-pre-gyp ERR! node-pre-gyp -v v0.6.31 node-pre-gyp ERR! not ok Failed to execute '/usr/local/bin/node /usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js build --fallback-to-build --module=/home/pi/Desktop/node-sqlite_Sockets/node_modules/sqlite3/lib/binding/node-v46-linux-arm/node_sqlite3.node --module_name=node_sqlite3 --module_path=/home/pi/Desktop/node-sqlite_Sockets/node_modules/sqlite3/lib/binding/node-v46-linux-arm' (1) npm ERR! Linux 4.4.21-v7+ npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "install" "sqlite3" "--save" npm ERR! node v4.1.0 npm ERR! npm v2.14.3 npm ERR! code ELIFECYCLE npm ERR! sqlite3@3.1.8 install: node-pre-gyp install --fallback-to-build npm ERR! Exit status 1 npm ERR! npm ERR! Failed at the sqlite3@3.1.8 install script 'node-pre-gyp install --fallback-to-build'. 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-pre-gyp install --fallback-to-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! Please include the following file with any support request: npm ERR!
/home/pi/Desktop/node-sqlite_Sockets/npm-debug.log

如果我尝试执行我的 node.js 程序,我会遇到下一个错误:

If I try to execute my node.js program I have the next error:

module.js:338 抛出错误;^ 错误:找不到模块'/home/pi/Desktop/node-sqlite_Sockets/node_modules/sqlite3/lib/binding/node-v46-linux-arm/node_sqlite3.node'在 Function.Module._resolveFilename (module.js:336:15) 在位于 Module.require 的 Function.Module._load (module.js:286:25)(module.js:365:17) at require (module.js:384:17) at Object.(/home/pi/Desktop/node-sqlite_Sockets/node_modules/sqlite3/lib/sqlite3.js:4:15)在 Module._compile (module.js:434:26) 在 Object.Module._extensions..js(module.js:452:10) 在 Module.load (module.js:355:32) 在位于 Module.require 的 Function.Module._load (module.js:310:12)(module.js:365:17)

module.js:338 throw err; ^ Error: Cannot find module '/home/pi/Desktop/node-sqlite_Sockets/node_modules/sqlite3/lib/binding/node-v46-linux-arm/node_sqlite3.node' at Function.Module._resolveFilename (module.js:336:15) at Function.Module._load (module.js:286:25) at Module.require (module.js:365:17) at require (module.js:384:17) at Object. (/home/pi/Desktop/node-sqlite_Sockets/node_modules/sqlite3/lib/sqlite3.js:4:15) at Module._compile (module.js:434:26) at Object.Module._extensions..js (module.js:452:10) at Module.load (module.js:355:32) at Function.Module._load (module.js:310:12) at Module.require (module.js:365:17)

更新后(npm install -g npm)

After update (npm install -g npm)

npm WARN checkPermissions 缺少对/usr/local/lib/node_modules/npmnpm WARN checkPermissions 缺少对/usr/local/lib/node_modules/usr/local/lib└── npm@3.10.9npm 错误!Linux 4.4.21-v7+npm 错误!argv "/usr/local/bin/node" "/usr/local/bin/npm" "安装""-g" "npm" npm 错误!node v4.1.0 npm ERR!npm v3.10.9 npm ERR!小路/usr/local/lib/node_modules/npmnpm 错误!代码 EACCES npm ERR!错误号 -13npm 错误!系统调用访问npm 错误!错误:EACCES:权限被拒绝,访问'/usr/local/lib/node_modules/npm' npm ERR!在错误(本机)npm呃!{ [错误:EACCES:权限被拒绝,访问'/usr/local/lib/node_modules/npm'] npm ERR!错误号:-13,npm 错误!
代码:'EACCES',npm 错误!系统调用:'访问',npm 错误!小路:'/usr/local/lib/node_modules/npm' } npm 错误!npm 错误!请试试以 root/管理员身份再次运行此命令.npm 错误!请在任何支持请求中包含以下文件:npm ERR!
/home/pi/Desktop/node-sqlite_Sockets/npm-debug.log

npm WARN checkPermissions Missing write access to /usr/local/lib/node_modules/npm npm WARN checkPermissions Missing write access to /usr/local/lib/node_modules /usr/local/lib └── npm@3.10.9 npm ERR! Linux 4.4.21-v7+ npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/ npm" "install" "-g" "npm" npm ERR! node v4.1.0 npm ERR! npm v3.10.9 npm ERR! path /usr/local/lib/node_modules/npm npm ERR! code EACCES npm ERR! errno -13 npm ERR! syscall access npm ERR! Error: EACCES: permission denied, access '/usr/local/lib/node_modules/npm' npm ERR! at Error (native) npm ERR! { [Error: EACCES: permission denied, access '/usr/local/lib/node_modules/npm'] npm ERR! errno: -13, npm ERR!
code: 'EACCES', npm ERR! syscall: 'access', npm ERR! path: '/usr/local/lib/node_modules/npm' } npm ERR! npm ERR! Please try running this command again as root/Administrator. npm ERR! Please include the following file with any support request: npm ERR!
/home/pi/Desktop/node-sqlite_Sockets/npm-debug.log

有人知道怎么解决吗?提前致谢!

Somebody know how to solve it? Thanks in advance!

最好的问候.

推荐答案

您之前是否在其他应用上安装过 sqlite3?因为您的缓存文件可能已损坏.尝试使用 npm cache clean sqlite3 从缓存中删除它,或者使用 npm cache clean 清理整个缓存,然后再次运行安装脚本.

have you installed sqlite3 before on another app? because your cached files could be corrupt. try to remove it from your cache with npm cache clean sqlite3 or clean your whole cache with npm cache clean and run the install script again.

编辑:在您编辑问题之后.这似乎是一个权限错误.尝试使用 sudo npm install -g npm

Edit: after you edited your question. it seems to be a permission error. Try running the npm update with sudo npm install -g npm

总结:这是一个旧 npm 版本的问题.更新到新版本通过运行 sudo npm install -g npm 解决了这个问题.

Summary: It was a problem with an old npm version. The update to a newer version solved it by running sudo npm install -g npm.

这篇关于在 node.js 中安装 sqlite3 时出错的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆