* *Action taken (what you did)*
Installed Gekko in Raspbian OS using terminal instructions here: https://gekko.wizb.it/docs/installation/installing_gekko.html
Launched Gekko, and went to import data. Import fails. Gekko shows error:
"Gekko encountered an error and can't continue
Error: The plugin sqlite adapter expects the module sqlite3 to be installed. However it is not, install it by running: npm install [email protected]"
I run the command "npm install [email protected]"
(and variations of it, also tried several versions of nodejs)
Please assist!
* *Expected result (what you hoped would happen)*
sqlite3 installs, and Gekko works
* *Actual result (unexpected outcome)*
Error installing sqlite3:
node-pre-gyp info check checked for "/home/pi/gekko/node_modules/sqlite3/lib/binding/node-v57-linux-arm/node_sqlite3.node" (not found)
node-pre-gyp http GET https://mapbox-node-binary.s3.amazonaws.com/sqlite3/v3.1.4/node-v57-linux-arm.tar.gz
node-pre-gyp http 403 https://mapbox-node-binary.s3.amazonaws.com/sqlite3/v3.1.4/node-v57-linux-arm.tar.gz
node-pre-gyp ERR! Tried to download: https://mapbox-node-binary.s3.amazonaws.com/sqlite3/v3.1.4/node-v57-linux-arm.tar.gz
node-pre-gyp ERR! Pre-built binaries not found for [email protected] and [email protected] (node-v57 ABI) (falling back to source compile with node-gyp)
node-pre-gyp http 403 status code downloading tarball https://mapbox-node-binary.s3.amazonaws.com/sqlite3/v3.1.4/node-v57-linux-arm.tar.gz
node-pre-gyp verb command build [ 'rebuild' ]
THE FULL COMMAND RESPONSE IS BELOW
pi@raspberrypi:~/gekko $ npm install [email protected]
[email protected] install /home/pi/gekko/node_modules/sqlite3
node-pre-gyp install --fallback-to-build
node-pre-gyp info it worked if it ends with ok
node-pre-gyp verb cli [ '/usr/local/bin/node',
node-pre-gyp verb cli '/home/pi/gekko/node_modules/sqlite3/node_modules/.bin/node-pre-gyp',
node-pre-gyp verb cli 'install',
node-pre-gyp verb cli '--fallback-to-build' ]
node-pre-gyp info using [email protected]
node-pre-gyp info using [email protected] | linux | arm
node-pre-gyp verb command install []
node-pre-gyp info check checked for "/home/pi/gekko/node_modules/sqlite3/lib/binding/node-v57-linux-arm/node_sqlite3.node" (not found)
node-pre-gyp http GET https://mapbox-node-binary.s3.amazonaws.com/sqlite3/v3.1.4/node-v57-linux-arm.tar.gz
node-pre-gyp http 403 https://mapbox-node-binary.s3.amazonaws.com/sqlite3/v3.1.4/node-v57-linux-arm.tar.gz
node-pre-gyp ERR! Tried to download: https://mapbox-node-binary.s3.amazonaws.com/sqlite3/v3.1.4/node-v57-linux-arm.tar.gz
node-pre-gyp ERR! Pre-built binaries not found for [email protected] and [email protected] (node-v57 ABI) (falling back to source compile with node-gyp)
node-pre-gyp http 403 status code downloading tarball https://mapbox-node-binary.s3.amazonaws.com/sqlite3/v3.1.4/node-v57-linux-arm.tar.gz
node-pre-gyp verb command build [ 'rebuild' ]
make: Entering directory '/home/pi/gekko/node_modules/sqlite3/build'
ACTION deps_sqlite3_gyp_action_before_build_target_unpack_sqlite_dep Release/obj/gen/sqlite-autoconf-3090100/sqlite3.c
TOUCH Release/obj.target/deps/action_before_build.stamp
CC(target) Release/obj.target/sqlite3/gen/sqlite-autoconf-3090100/sqlite3.o
Release/obj/gen/sqlite-autoconf-3090100/sqlite3.c:9704:26: warning: ‘sqlite3one’ defined but not used [-Wunused-const-variable=]
SQLITE_PRIVATE const int sqlite3one = 1;
^~~~
AR(target) Release/obj.target/deps/sqlite3.a
COPY Release/sqlite3.a
CXX(target) Release/obj.target/node_sqlite3/src/database.o
../src/database.cc: In static member function ‘static Nan::NAN_METHOD_RETURN_TYPE node_sqlite3::Database::New(Nan::NAN_METHOD_ARGS_TYPE)’:
../src/database.cc:132:96: warning: ‘bool v8::Object::ForceSet(v8::Local
orceSet(Nan::New("filename").ToLocalChecked(), info[0].As
^
In file included from /home/pi/.node-gyp/8.9.3/include/node/v8.h:26:0,
from /home/pi/.node-gyp/8.9.3/include/node/node.h:63,
from ../node_modules/nan/nan.h:47,
from ../src/database.h:10,
from ../src/database.cc:4:
/home/pi/.node-gyp/8.9.3/include/node/v8.h:3100:22: note: declared here
bool ForceSet(Local
^
/home/pi/.node-gyp/8.9.3/include/node/v8config.h:318:3: note: in definition of macro ‘V8_DEPRECATED’
declarator __attribute__((deprecated(message)))
^~~~
../src/database.cc:133:86: warning: ‘bool v8::Object::ForceSet(v8::Local
.This()->ForceSet(Nan::New("mode").ToLocalChecked(), Nan::New(mode), ReadOnly);
^
In file included from /home/pi/.node-gyp/8.9.3/include/node/v8.h:26:0,
from /home/pi/.node-gyp/8.9.3/include/node/node.h:63,
from ../node_modules/nan/nan.h:47,
from ../src/database.h:10,
from ../src/database.cc:4:
/home/pi/.node-gyp/8.9.3/include/node/v8.h:3100:22: note: declared here
bool ForceSet(Local
^
/home/pi/.node-gyp/8.9.3/include/node/v8config.h:318:3: note: in definition of macro ‘V8_DEPRECATED’
declarator __attribute__((deprecated(message)))
^~~~
../src/database.cc: In static member function ‘static void node_sqlite3::Database::Work_BeginOpen(node_sqlite3::Database::Baton)’:
../src/database.cc:143:9: warning: unused variable ‘status’ [-Wunused-variable]
int status = uv_queue_work(uv_default_loop(),
^~
../src/database.cc: In static member function ‘static void node_sqlite3::Database::Work_BeginClose(node_sqlite3::Database::Baton)’:
../src/database.cc:227:9: warning: unused variable ‘status’ [-Wunused-variable]
int status = uv_queue_work(uv_default_loop(),
^~
../src/database.cc: In static member function ‘static void node_sqlite3::Database::Work_BeginExec(node_sqlite3::Database::Baton)’:
../src/database.cc:505:9: warning: unused variable ‘status’ [-Wunused-variable]
int status = uv_queue_work(uv_default_loop(),
^~
../src/database.cc: In static member function ‘static void node_sqlite3::Database::Work_BeginLoadExtension(node_sqlite3::Database::Baton)’:
../src/database.cc:605:9: warning: unused variable ‘status’ [-Wunused-variable]
int status = uv_queue_work(uv_default_loop(),
^~
CXX(target) Release/obj.target/node_sqlite3/src/node_sqlite3.o
CXX(target) Release/obj.target/node_sqlite3/src/statement.o
../src/statement.cc: In static member function ‘static Nan::NAN_METHOD_RETURN_TYPE node_sqlite3::Statement::New(Nan::NAN_METHOD_ARGS_TYPE)’:
../src/statement.cc:103:74: warning: ‘bool v8::Object::ForceSet(v8::Local
info.This()->ForceSet(Nan::New("sql").ToLocalChecked(), sql, ReadOnly);
^
In file included from /home/pi/.node-gyp/8.9.3/include/node/v8.h:26:0,
from /home/pi/.node-gyp/8.9.3/include/node/node.h:63,
from ../src/statement.cc:2:
/home/pi/.node-gyp/8.9.3/include/node/v8.h:3100:22: note: declared here
bool ForceSet(Local
^
/home/pi/.node-gyp/8.9.3/include/node/v8config.h:318:3: note: in definition of macro ‘V8_DEPRECATED’
declarator __attribute__((deprecated(message)))
^~~~
../src/statement.cc: In static member function ‘static void node_sqlite3::Statement::Work_BeginPrepare(node_sqlite3::Database::Baton)’:
../src/statement.cc:118:9: warning: unused variable ‘status’ [-Wunused-variable]
int status = uv_queue_work(uv_default_loop(),
^~
In file included from ../src/statement.cc:6:0:
../src/statement.cc: In static member function ‘static void node_sqlite3::Statement::Work_BeginBind(node_sqlite3::Statement::Baton)’:
../src/macros.h:125:9: warning: unused variable ‘status’ [-Wunused-variable]
int status = uv_queue_work(uv_default_loop(), \
^
../src/statement.cc:322:5: note: in expansion of macro ‘STATEMENT_BEGIN’
STATEMENT_BEGIN(Bind);
^~~~~
../src/statement.cc: In static member function ‘static void node_sqlite3::Statement::Work_BeginGet(node_sqlite3::Statement::Baton)’:
../src/macros.h:125:9: warning: unused variable ‘status’ [-Wunused-variable]
int status = uv_queue_work(uv_default_loop(), \
^
../src/statement.cc:370:5: note: in expansion of macro ‘STATEMENT_BEGIN’
STATEMENT_BEGIN(Get);
^~~~~
../src/statement.cc: In static member function ‘static void node_sqlite3::Statement::Work_BeginRun(node_sqlite3::Statement::Baton)’:
../src/macros.h:125:9: warning: unused variable ‘status’ [-Wunused-variable]
int status = uv_queue_work(uv_default_loop(), \
^
../src/statement.cc:438:5: note: in expansion of macro ‘STATEMENT_BEGIN’
STATEMENT_BEGIN(Run);
^~~~~
../src/statement.cc: In static member function ‘static void node_sqlite3::Statement::Work_BeginAll(node_sqlite3::Statement::Baton)’:
../src/macros.h:125:9: warning: unused variable ‘status’ [-Wunused-variable]
int status = uv_queue_work(uv_default_loop(), \
^
../src/statement.cc:504:5: note: in expansion of macro ‘STATEMENT_BEGIN’
STATEMENT_BEGIN(All);
^~~~~
../src/statement.cc: In static member function ‘static void node_sqlite3::Statement::Work_BeginEach(node_sqlite3::Statement::Baton)’:
../src/macros.h:125:9: warning: unused variable ‘status’ [-Wunused-variable]
int status = uv_queue_work(uv_default_loop(), \
^
../src/statement.cc:601:5: note: in expansion of macro ‘STATEMENT_BEGIN’
STATEMENT_BEGIN(Each);
^~~~~
../src/statement.cc: In static member function ‘static void node_sqlite3::Statement::Work_BeginReset(node_sqlite3::Statement::Baton*)’:
../src/macros.h:125:9: warning: unused variable ‘status’ [-Wunused-variable]
int status = uv_queue_work(uv_default_loop(), \
^
../src/statement.cc:724:5: note: in expansion of macro ‘STATEMENT_BEGIN’
STATEMENT_BEGIN(Reset);
^~~~~
SOLINK_MODULE(target) Release/obj.target/node_sqlite3.node
COPY Release/node_sqlite3.node
COPY /home/pi/gekko/node_modules/sqlite3/lib/binding/node-v57-linux-arm/node_sqlite3.node
TOUCH Release/obj.target/action_after_build.stamp
make: Leaving directory '/home/pi/gekko/node_modules/sqlite3/build'
node-pre-gyp info ok
You need to update your version of node, you are too far out of date.
+1 on this problem. Attempting to install on my Raspberry Pi Model B.
Gekko version: v0.5.12
Nodejs version: v8.9.4
Stuck in the exact same place as @gekkotrader with failed imports due to sqlite3 cannot be installed with npm.
@gekkotrader and anyone else who might have the same problem, I think I've found a solution:
chown -R pi:pi . This is particularly important on the node_modules directory or the install of sqlite3 may fail.npm i sqlite3 --build-from-sourceAfter that, fire up gekko again: node gekko --ui and your imports should be working.
Hope it helps.
Thank you @aaslun ! Your fix worked for me as well.
Most helpful comment
@gekkotrader and anyone else who might have the same problem, I think I've found a solution:
chown -R pi:pi .This is particularly important on the node_modules directory or the install of sqlite3 may fail.npm i sqlite3 --build-from-sourceAfter that, fire up gekko again:
node gekko --uiand your imports should be working.Hope it helps.