Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

"npm" is not building on recent airgap-wallet release #21

Closed
cherrygot-personal opened this issue Mar 16, 2020 · 5 comments
Closed

"npm" is not building on recent airgap-wallet release #21

cherrygot-personal opened this issue Mar 16, 2020 · 5 comments

Comments

@cherrygot-personal
Copy link

Has anyone tried "npm install" on this repository? I've been trying to track and debug the issue for a day but no luck. Here's the verbose output:

> npm run rebuild || echo "Keccak bindings compilation fail. Pure JS implementation will be used."


> keccak@1.4.0 rebuild /run/media/FedUser/Stuffffff/Programming/Web/Direct_Clients/airgap-wallet-3.0.0/node_modules/keccak
> node-gyp rebuild

make: Entering directory '/run/media/FedUser/Stuffffff/Programming/Web/Direct_Clients/airgap-wallet-3.0.0/node_modules/keccak/build'
  CXX(target) Release/obj.target/keccak/src/addon.o
../src/addon.cc: In static member function ‘static Nan::NAN_METHOD_RETURN_TYPE KeccakWrapper::Initialize(Nan::NAN_METHOD_ARGS_TYPE)’:
../src/addon.cc:37:47: error: no matching function for call to ‘v8::Value::IntegerValue()’
     unsigned int rate = info[0]->IntegerValue();
                                               ^
In file included from /home/FedUser/.cache/node-gyp/12.13.1/include/node/node.h:63:0,
                 from ../src/addon.cc:1:
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:2609:40: note: candidate: v8::Maybe<long int> v8::Value::IntegerValue(v8::Local<v8::Context>) const
   V8_WARN_UNUSED_RESULT Maybe<int64_t> IntegerValue(
                                        ^~~~~~~~~~~~
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:2609:40: note:   candidate expects 1 argument, 0 provided
../src/addon.cc:38:51: error: no matching function for call to ‘v8::Value::IntegerValue()’
     unsigned int capacity = info[1]->IntegerValue();
                                                   ^
In file included from /home/FedUser/.cache/node-gyp/12.13.1/include/node/node.h:63:0,
                 from ../src/addon.cc:1:
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:2609:40: note: candidate: v8::Maybe<long int> v8::Value::IntegerValue(v8::Local<v8::Context>) const
   V8_WARN_UNUSED_RESULT Maybe<int64_t> IntegerValue(
                                        ^~~~~~~~~~~~
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:2609:40: note:   candidate expects 1 argument, 0 provided
../src/addon.cc: In static member function ‘static Nan::NAN_METHOD_RETURN_TYPE KeccakWrapper::AbsorbLastFewBits(Nan::NAN_METHOD_ARGS_TYPE)’:
../src/addon.cc:56:48: error: no matching function for call to ‘v8::Value::IntegerValue()’
     unsigned char bits = info[0]->IntegerValue();
                                                ^
In file included from /home/FedUser/.cache/node-gyp/12.13.1/include/node/node.h:63:0,
                 from ../src/addon.cc:1:
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:2609:40: note: candidate: v8::Maybe<long int> v8::Value::IntegerValue(v8::Local<v8::Context>) const
   V8_WARN_UNUSED_RESULT Maybe<int64_t> IntegerValue(
                                        ^~~~~~~~~~~~
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:2609:40: note:   candidate expects 1 argument, 0 provided
../src/addon.cc: In static member function ‘static Nan::NAN_METHOD_RETURN_TYPE KeccakWrapper::Squeeze(Nan::NAN_METHOD_ARGS_TYPE)’:
../src/addon.cc:64:43: error: no matching function for call to ‘v8::Value::IntegerValue()’
     size_t length = info[0]->IntegerValue();
                                           ^
In file included from /home/FedUser/.cache/node-gyp/12.13.1/include/node/node.h:63:0,
                 from ../src/addon.cc:1:
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:2609:40: note: candidate: v8::Maybe<long int> v8::Value::IntegerValue(v8::Local<v8::Context>) const
   V8_WARN_UNUSED_RESULT Maybe<int64_t> IntegerValue(
                                        ^~~~~~~~~~~~
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:2609:40: note:   candidate expects 1 argument, 0 provided
../src/addon.cc: In static member function ‘static Nan::NAN_METHOD_RETURN_TYPE KeccakWrapper::Copy(Nan::NAN_METHOD_ARGS_TYPE)’:
../src/addon.cc:75:82: error: no matching function for call to ‘v8::Value::ToObject()’
     KeccakWrapper* to = Nan::ObjectWrap::Unwrap<KeccakWrapper>(info[0]->ToObject());
                                                                                  ^
In file included from /home/FedUser/.cache/node-gyp/12.13.1/include/node/node.h:63:0,
                 from ../src/addon.cc:1:
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:2576:44: note: candidate: v8::MaybeLocal<v8::Object> v8::Value::ToObject(v8::Local<v8::Context>) const
   V8_WARN_UNUSED_RESULT MaybeLocal<Object> ToObject(
                                            ^~~~~~~~
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:2576:44: note:   candidate expects 1 argument, 0 provided
In file included from /home/FedUser/.cache/node-gyp/12.13.1/include/node/v8-internal.h:14:0,
                 from /home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:25,
                 from /home/FedUser/.cache/node-gyp/12.13.1/include/node/node.h:63,
                 from ../src/addon.cc:1:
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:2590:31: note: candidate: v8::Local<v8::Object> v8::Value::ToObject(v8::Isolate*) const
                 Local<Object> ToObject(Isolate* isolate) const);
                               ^
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8config.h:311:3: note: in definition of macro ‘V8_DEPRECATED’
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:2590:31: note:   candidate expects 1 argument, 0 provided
                 Local<Object> ToObject(Isolate* isolate) const);
                               ^
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8config.h:311:3: note: in definition of macro ‘V8_DEPRECATED’
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
make: *** [keccak.target.mk:127: Release/obj.target/keccak/src/addon.o] Error 1
make: Leaving directory '/run/media/FedUser/Stuffffff/Programming/Web/Direct_Clients/airgap-wallet-3.0.0/node_modules/keccak/build'
gyp ERR! build error 
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack     at ChildProcess.onExit (/home/FedUser/.npm-global/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:194:23)
gyp ERR! stack     at ChildProcess.emit (events.js:210:5)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:272:12)
gyp ERR! System Linux 4.18.19-100.fc27.x86_64
gyp ERR! command "/usr/local/n/versions/node/12.13.1/bin/node" "/home/FedUser/.npm-global/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /run/media/FedUser/Stuffffff/Programming/Web/Direct_Clients/airgap-wallet-3.0.0/node_modules/keccak
gyp ERR! node -v v12.13.1
gyp ERR! node-gyp -v v5.1.0
gyp ERR! not ok 
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! keccak@1.4.0 rebuild: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the keccak@1.4.0 rebuild script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm WARN Local package.json exists, but node_modules missing, did you mean to install?

npm ERR! A complete log of this run can be found in:
npm ERR!     /home/FedUser/.npm/_logs/2020-03-16T09_59_17_659Z-debug.log
Keccak bindings compilation fail. Pure JS implementation will be used.

> secp256k1@3.6.2 install /run/media/FedUser/Stuffffff/Programming/Web/Direct_Clients/airgap-wallet-3.0.0/node_modules/secp256k1
> npm run rebuild || echo "Secp256k1 bindings compilation fail. Pure JS implementation will be used."


> secp256k1@3.6.2 rebuild /run/media/FedUser/Stuffffff/Programming/Web/Direct_Clients/airgap-wallet-3.0.0/node_modules/secp256k1
> node-gyp rebuild

make: Entering directory '/run/media/FedUser/Stuffffff/Programming/Web/Direct_Clients/airgap-wallet-3.0.0/node_modules/secp256k1/build'
  CXX(target) Release/obj.target/secp256k1/src/addon.o
  CXX(target) Release/obj.target/secp256k1/src/privatekey.o
In file included from ../src/privatekey.cc:8:0:
../src/privatekey.cc: In function ‘Nan::NAN_METHOD_RETURN_TYPE privateKeyExport(Nan::NAN_METHOD_ARGS_TYPE)’:
../src/util.h:15:76: warning: ‘v8::Maybe<bool> v8::Value::BooleanValue(v8::Local<v8::Context>) const’ is deprecated: BooleanValue can never throw. Use Isolate version. [-Wdeprecated-declarations]
     compressed = value->BooleanValue(info.GetIsolate()->GetCurrentContext()).ToChecked() ? v_true : v_false;                     \
                                                                            ^
../src/privatekey.cc:36:3: note: in expansion of macro ‘UPDATE_COMPRESSED_VALUE’
   UPDATE_COMPRESSED_VALUE(compressed, info[1], 1, 0);
   ^~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/FedUser/.cache/node-gyp/12.13.1/include/node/v8-internal.h:14:0,
                 from /home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:25,
                 from /home/FedUser/.cache/node-gyp/12.13.1/include/node/node.h:63,
                 from ../src/privatekey.cc:1:
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:2606:51: note: declared here
                 V8_WARN_UNUSED_RESULT Maybe<bool> BooleanValue(
                                                   ^
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8config.h:311:3: note: in definition of macro ‘V8_DEPRECATED’
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
../src/privatekey.cc: In function ‘Nan::NAN_METHOD_RETURN_TYPE privateKeyNegate(Nan::NAN_METHOD_ARGS_TYPE)’:
../src/privatekey.cc:73:30: warning: ignoring return value of ‘int secp256k1_ec_privkey_negate(const secp256k1_context*, unsigned char*)’, declared with attribute warn_unused_result [-Wunused-result]
   secp256k1_ec_privkey_negate(secp256k1ctx, &private_key[0]);
   ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  CXX(target) Release/obj.target/secp256k1/src/publickey.o
In file included from ../src/publickey.cc:7:0:
../src/publickey.cc: In function ‘Nan::NAN_METHOD_RETURN_TYPE publicKeyCreate(Nan::NAN_METHOD_ARGS_TYPE)’:
../src/util.h:15:76: warning: ‘v8::Maybe<bool> v8::Value::BooleanValue(v8::Local<v8::Context>) const’ is deprecated: BooleanValue can never throw. Use Isolate version. [-Wdeprecated-declarations]
     compressed = value->BooleanValue(info.GetIsolate()->GetCurrentContext()).ToChecked() ? v_true : v_false;                     \
                                                                            ^
../src/publickey.cc:20:3: note: in expansion of macro ‘UPDATE_COMPRESSED_VALUE’
   UPDATE_COMPRESSED_VALUE(flags, info[1], SECP256K1_EC_COMPRESSED, SECP256K1_EC_UNCOMPRESSED);
   ^~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/FedUser/.cache/node-gyp/12.13.1/include/node/v8-internal.h:14:0,
                 from /home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:25,
                 from /home/FedUser/.cache/node-gyp/12.13.1/include/node/node.h:63,
                 from ../src/publickey.cc:2:
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:2606:51: note: declared here
                 V8_WARN_UNUSED_RESULT Maybe<bool> BooleanValue(
                                                   ^
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8config.h:311:3: note: in definition of macro ‘V8_DEPRECATED’
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
In file included from ../src/publickey.cc:7:0:
../src/publickey.cc: In function ‘Nan::NAN_METHOD_RETURN_TYPE publicKeyConvert(Nan::NAN_METHOD_ARGS_TYPE)’:
../src/util.h:15:76: warning: ‘v8::Maybe<bool> v8::Value::BooleanValue(v8::Local<v8::Context>) const’ is deprecated: BooleanValue can never throw. Use Isolate version. [-Wdeprecated-declarations]
     compressed = value->BooleanValue(info.GetIsolate()->GetCurrentContext()).ToChecked() ? v_true : v_false;                     \
                                                                            ^
../src/publickey.cc:43:3: note: in expansion of macro ‘UPDATE_COMPRESSED_VALUE’
   UPDATE_COMPRESSED_VALUE(flags, info[1], SECP256K1_EC_COMPRESSED, SECP256K1_EC_UNCOMPRESSED);
   ^~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/FedUser/.cache/node-gyp/12.13.1/include/node/v8-internal.h:14:0,
                 from /home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:25,
                 from /home/FedUser/.cache/node-gyp/12.13.1/include/node/node.h:63,
                 from ../src/publickey.cc:2:
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:2606:51: note: declared here
                 V8_WARN_UNUSED_RESULT Maybe<bool> BooleanValue(
                                                   ^
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8config.h:311:3: note: in definition of macro ‘V8_DEPRECATED’
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
In file included from ../src/publickey.cc:7:0:
../src/publickey.cc: In function ‘Nan::NAN_METHOD_RETURN_TYPE publicKeyTweakAdd(Nan::NAN_METHOD_ARGS_TYPE)’:
../src/util.h:15:76: warning: ‘v8::Maybe<bool> v8::Value::BooleanValue(v8::Local<v8::Context>) const’ is deprecated: BooleanValue can never throw. Use Isolate version. [-Wdeprecated-declarations]
     compressed = value->BooleanValue(info.GetIsolate()->GetCurrentContext()).ToChecked() ? v_true : v_false;                     \
                                                                            ^
../src/publickey.cc:84:3: note: in expansion of macro ‘UPDATE_COMPRESSED_VALUE’
   UPDATE_COMPRESSED_VALUE(flags, info[2], SECP256K1_EC_COMPRESSED, SECP256K1_EC_UNCOMPRESSED);
   ^~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/FedUser/.cache/node-gyp/12.13.1/include/node/v8-internal.h:14:0,
                 from /home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:25,
                 from /home/FedUser/.cache/node-gyp/12.13.1/include/node/node.h:63,
                 from ../src/publickey.cc:2:
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:2606:51: note: declared here
                 V8_WARN_UNUSED_RESULT Maybe<bool> BooleanValue(
                                                   ^
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8config.h:311:3: note: in definition of macro ‘V8_DEPRECATED’
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
In file included from ../src/publickey.cc:7:0:
../src/publickey.cc: In function ‘Nan::NAN_METHOD_RETURN_TYPE publicKeyTweakMul(Nan::NAN_METHOD_ARGS_TYPE)’:
../src/util.h:15:76: warning: ‘v8::Maybe<bool> v8::Value::BooleanValue(v8::Local<v8::Context>) const’ is deprecated: BooleanValue can never throw. Use Isolate version. [-Wdeprecated-declarations]
     compressed = value->BooleanValue(info.GetIsolate()->GetCurrentContext()).ToChecked() ? v_true : v_false;                     \
                                                                            ^
../src/publickey.cc:116:3: note: in expansion of macro ‘UPDATE_COMPRESSED_VALUE’
   UPDATE_COMPRESSED_VALUE(flags, info[2], SECP256K1_EC_COMPRESSED, SECP256K1_EC_UNCOMPRESSED);
   ^~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/FedUser/.cache/node-gyp/12.13.1/include/node/v8-internal.h:14:0,
                 from /home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:25,
                 from /home/FedUser/.cache/node-gyp/12.13.1/include/node/node.h:63,
                 from ../src/publickey.cc:2:
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:2606:51: note: declared here
                 V8_WARN_UNUSED_RESULT Maybe<bool> BooleanValue(
                                                   ^
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8config.h:311:3: note: in definition of macro ‘V8_DEPRECATED’
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
In file included from ../src/publickey.cc:7:0:
../src/publickey.cc: In function ‘Nan::NAN_METHOD_RETURN_TYPE publicKeyCombine(Nan::NAN_METHOD_ARGS_TYPE)’:
../src/util.h:15:76: warning: ‘v8::Maybe<bool> v8::Value::BooleanValue(v8::Local<v8::Context>) const’ is deprecated: BooleanValue can never throw. Use Isolate version. [-Wdeprecated-declarations]
     compressed = value->BooleanValue(info.GetIsolate()->GetCurrentContext()).ToChecked() ? v_true : v_false;                     \
                                                                            ^
../src/publickey.cc:141:3: note: in expansion of macro ‘UPDATE_COMPRESSED_VALUE’
   UPDATE_COMPRESSED_VALUE(flags, info[1], SECP256K1_EC_COMPRESSED, SECP256K1_EC_UNCOMPRESSED);
   ^~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/FedUser/.cache/node-gyp/12.13.1/include/node/v8-internal.h:14:0,
                 from /home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:25,
                 from /home/FedUser/.cache/node-gyp/12.13.1/include/node/node.h:63,
                 from ../src/publickey.cc:2:
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:2606:51: note: declared here
                 V8_WARN_UNUSED_RESULT Maybe<bool> BooleanValue(
                                                   ^
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8config.h:311:3: note: in definition of macro ‘V8_DEPRECATED’
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
../src/publickey.cc:146:95: warning: ‘v8::Local<v8::Value> v8::Object::Get(uint32_t)’ is deprecated: Use maybe version [-Wdeprecated-declarations]
     v8::Local<v8::Object> public_key_buffer = v8::Local<v8::Object>::Cast(input_buffers->Get(i));
                                                                                               ^
In file included from /home/FedUser/.cache/node-gyp/12.13.1/include/node/v8-internal.h:14:0,
                 from /home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:25,
                 from /home/FedUser/.cache/node-gyp/12.13.1/include/node/node.h:63,
                 from ../src/publickey.cc:2:
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:3461:51: note: declared here
   V8_DEPRECATED("Use maybe version", Local<Value> Get(uint32_t index));
                                                   ^
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8config.h:311:3: note: in definition of macro ‘V8_DEPRECATED’
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
  CXX(target) Release/obj.target/secp256k1/src/signature.o
  CXX(target) Release/obj.target/secp256k1/src/ecdsa.o
../src/ecdsa.cc: In function ‘int nonce_function_custom(unsigned char*, const unsigned char*, const unsigned char*, const unsigned char*, void*, unsigned int)’:
../src/ecdsa.cc:23:103: error: no matching function for call to ‘v8::Function::Call(v8::Local<v8::Object>, int, v8::Local<v8::Value> [5])’
   v8::Local<v8::Value> result = noncefn_callback->Call(isolate->GetCurrentContext()->Global(), 5, argv);
                                                                                                       ^
In file included from /home/FedUser/.cache/node-gyp/12.13.1/include/node/node.h:63:0,
                 from ../src/ecdsa.cc:1:
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:4193:43: note: candidate: v8::MaybeLocal<v8::Value> v8::Function::Call(v8::Local<v8::Context>, v8::Local<v8::Value>, int, v8::Local<v8::Value>*)
   V8_WARN_UNUSED_RESULT MaybeLocal<Value> Call(Local<Context> context,
                                           ^~~~
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:4193:43: note:   candidate expects 4 arguments, 3 provided
../src/ecdsa.cc: In function ‘Nan::NAN_METHOD_RETURN_TYPE sign(Nan::NAN_METHOD_ARGS_TYPE)’:
../src/ecdsa.cc:55:97: warning: ‘v8::Local<v8::Value> v8::Object::Get(v8::Local<v8::Value>)’ is deprecated: Use maybe version [-Wdeprecated-declarations]
     v8::Local<v8::Value> data_value = options->Get(Nan::New<v8::String>("data").ToLocalChecked());
                                                                                                 ^
In file included from /home/FedUser/.cache/node-gyp/12.13.1/include/node/v8-internal.h:14:0,
                 from /home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:25,
                 from /home/FedUser/.cache/node-gyp/12.13.1/include/node/node.h:63,
                 from ../src/ecdsa.cc:1:
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:3457:51: note: declared here
   V8_DEPRECATED("Use maybe version", Local<Value> Get(Local<Value> key));
                                                   ^
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8config.h:311:3: note: in definition of macro ‘V8_DEPRECATED’
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
../src/ecdsa.cc:62:115: warning: ‘v8::Local<v8::Value> v8::Object::Get(v8::Local<v8::Value>)’ is deprecated: Use maybe version [-Wdeprecated-declarations]
     noncefn_callback = v8::Local<v8::Function>::Cast(options->Get(Nan::New<v8::String>("noncefn").ToLocalChecked()));
                                                                                                                   ^
In file included from /home/FedUser/.cache/node-gyp/12.13.1/include/node/v8-internal.h:14:0,
                 from /home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:25,
                 from /home/FedUser/.cache/node-gyp/12.13.1/include/node/node.h:63,
                 from ../src/ecdsa.cc:1:
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:3457:51: note: declared here
   V8_DEPRECATED("Use maybe version", Local<Value> Get(Local<Value> key));
                                                   ^
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8config.h:311:3: note: in definition of macro ‘V8_DEPRECATED’
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
../src/ecdsa.cc:79:91: warning: ‘bool v8::Object::Set(v8::Local<v8::Value>, v8::Local<v8::Value>)’ is deprecated: Use maybe version [-Wdeprecated-declarations]
   obj->Set(Nan::New<v8::String>("signature").ToLocalChecked(), COPY_BUFFER(&output[0], 64));
                                                                                           ^
In file included from /home/FedUser/.cache/node-gyp/12.13.1/include/node/v8-internal.h:14:0,
                 from /home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:25,
                 from /home/FedUser/.cache/node-gyp/12.13.1/include/node/node.h:63,
                 from ../src/ecdsa.cc:1:
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:3403:22: note: declared here
                 bool Set(Local<Value> key, Local<Value> value));
                      ^
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8config.h:311:3: note: in definition of macro ‘V8_DEPRECATED’
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
../src/ecdsa.cc:80:90: warning: ‘bool v8::Object::Set(v8::Local<v8::Value>, v8::Local<v8::Value>)’ is deprecated: Use maybe version [-Wdeprecated-declarations]
   obj->Set(Nan::New<v8::String>("recovery").ToLocalChecked(), Nan::New<v8::Number>(recid));
                                                                                          ^
In file included from /home/FedUser/.cache/node-gyp/12.13.1/include/node/v8-internal.h:14:0,
                 from /home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:25,
                 from /home/FedUser/.cache/node-gyp/12.13.1/include/node/node.h:63,
                 from ../src/ecdsa.cc:1:
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:3403:22: note: declared here
                 bool Set(Local<Value> key, Local<Value> value));
                      ^
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8config.h:311:3: note: in definition of macro ‘V8_DEPRECATED’
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
In file included from ../src/ecdsa.cc:7:0:
../src/ecdsa.cc: In function ‘Nan::NAN_METHOD_RETURN_TYPE recover(Nan::NAN_METHOD_ARGS_TYPE)’:
../src/util.h:15:76: warning: ‘v8::Maybe<bool> v8::Value::BooleanValue(v8::Local<v8::Context>) const’ is deprecated: BooleanValue can never throw. Use Isolate version. [-Wdeprecated-declarations]
     compressed = value->BooleanValue(info.GetIsolate()->GetCurrentContext()).ToChecked() ? v_true : v_false;                     \
                                                                            ^
../src/ecdsa.cc:140:3: note: in expansion of macro ‘UPDATE_COMPRESSED_VALUE’
   UPDATE_COMPRESSED_VALUE(flags, info[3], SECP256K1_EC_COMPRESSED, SECP256K1_EC_UNCOMPRESSED);
   ^~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/FedUser/.cache/node-gyp/12.13.1/include/node/v8-internal.h:14:0,
                 from /home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:25,
                 from /home/FedUser/.cache/node-gyp/12.13.1/include/node/node.h:63,
                 from ../src/ecdsa.cc:1:
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:2606:51: note: declared here
                 V8_WARN_UNUSED_RESULT Maybe<bool> BooleanValue(
                                                   ^
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8config.h:311:3: note: in definition of macro ‘V8_DEPRECATED’
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
make: *** [secp256k1.target.mk:161: Release/obj.target/secp256k1/src/ecdsa.o] Error 1
make: Leaving directory '/run/media/FedUser/Stuffffff/Programming/Web/Direct_Clients/airgap-wallet-3.0.0/node_modules/secp256k1/build'
gyp ERR! build error 
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack     at ChildProcess.onExit (/home/FedUser/.npm-global/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:194:23)
gyp ERR! stack     at ChildProcess.emit (events.js:210:5)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:272:12)
gyp ERR! System Linux 4.18.19-100.fc27.x86_64
gyp ERR! command "/usr/local/n/versions/node/12.13.1/bin/node" "/home/FedUser/.npm-global/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /run/media/FedUser/Stuffffff/Programming/Web/Direct_Clients/airgap-wallet-3.0.0/node_modules/secp256k1
gyp ERR! node -v v12.13.1
gyp ERR! node-gyp -v v5.1.0
gyp ERR! not ok 
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! secp256k1@3.6.2 rebuild: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the secp256k1@3.6.2 rebuild script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm WARN Local package.json exists, but node_modules missing, did you mean to install?

npm ERR! A complete log of this run can be found in:
npm ERR!     /home/FedUser/.npm/_logs/2020-03-16T09_59_24_304Z-debug.log
Secp256k1 bindings compilation fail. Pure JS implementation will be used.

> canvas@2.5.0 install /run/media/FedUser/Stuffffff/Programming/Web/Direct_Clients/airgap-wallet-3.0.0/node_modules/canvas
> node-pre-gyp install --fallback-to-build

node-pre-gyp WARN Using request for node-pre-gyp https download 
[canvas] Success: "/run/media/FedUser/Stuffffff/Programming/Web/Direct_Clients/airgap-wallet-3.0.0/node_modules/canvas/build/Release/canvas.node" is installed via remote

> phantomjs2-ext@0.2.2 install /run/media/FedUser/Stuffffff/Programming/Web/Direct_Clients/airgap-wallet-3.0.0/node_modules/karma-phantomjs2-launcher/node_modules/phantomjs2-ext
> node install.js

WARN invalid config loglevel="notice"
Download already available at /tmp/phantomjs/phantomjs-2.1.1-linux-x86_64.tar.bz2
Extracting tar contents (via spawned process)
Removing /run/media/FedUser/Stuffffff/Programming/Web/Direct_Clients/airgap-wallet-3.0.0/node_modules/karma-phantomjs2-launcher/node_modules/phantomjs2-ext/lib/phantom
Copying extracted folder /tmp/phantomjs/phantomjs-2.1.1-linux-x86_64.tar.bz2-extract-1584352858200/phantomjs-2.1.1-linux-x86_64 -> /run/media/FedUser/Stuffffff/Programming/Web/Direct_Clients/airgap-wallet-3.0.0/node_modules/karma-phantomjs2-launcher/node_modules/phantomjs2-ext/lib/phantom
Removing /tmp/phantomjs/phantomjs-2.1.1-linux-x86_64.tar.bz2-extract-1584352858200
Writing location.js file
Done. Phantomjs binary available at /run/media/FedUser/Stuffffff/Programming/Web/Direct_Clients/airgap-wallet-3.0.0/node_modules/karma-phantomjs2-launcher/node_modules/phantomjs2-ext/lib/phantom/bin/phantomjs

> husky@1.3.1 install /run/media/FedUser/Stuffffff/Programming/Web/Direct_Clients/airgap-wallet-3.0.0/node_modules/husky
> node husky install

husky > setting up git hooks
Can't find .git, skipping Git hooks installation.
Please check that you're in a cloned repository or run 'git init' to create an empty Git repository and reinstall husky.

> phantomjs-prebuilt@2.1.16 install /run/media/FedUser/Stuffffff/Programming/Web/Direct_Clients/airgap-wallet-3.0.0/node_modules/phantomjs-prebuilt
> node install.js

PhantomJS not found on PATH
Download already available at /tmp/phantomjs/phantomjs-2.1.1-linux-x86_64.tar.bz2
Verified checksum of previously downloaded file
Extracting tar contents (via spawned process)
Removing /run/media/FedUser/Stuffffff/Programming/Web/Direct_Clients/airgap-wallet-3.0.0/node_modules/phantomjs-prebuilt/lib/phantom
Copying extracted folder /tmp/phantomjs/phantomjs-2.1.1-linux-x86_64.tar.bz2-extract-1584352883788/phantomjs-2.1.1-linux-x86_64 -> /run/media/FedUser/Stuffffff/Programming/Web/Direct_Clients/airgap-wallet-3.0.0/node_modules/phantomjs-prebuilt/lib/phantom
Writing location.js file
Done. Phantomjs binary available at /run/media/FedUser/Stuffffff/Programming/Web/Direct_Clients/airgap-wallet-3.0.0/node_modules/phantomjs-prebuilt/lib/phantom/bin/phantomjs

> puppeteer@1.14.0 install /run/media/FedUser/Stuffffff/Programming/Web/Direct_Clients/airgap-wallet-3.0.0/node_modules/puppeteer
> node install.js

Downloading Chromium r641577 - 109.8 Mb [=                   ] 3% 199.0s ^C

I know what's going to happen next. It's downloading chromium and at the end, the entire setup fails. I've somehow missed the entire output but I can't spend so much bandwidth to again download chromium and re-iterate the scenario. If anyone really needs to know the next part, just tell me and I'll try to recreate the entire thing.

@AndreasGassmann
Copy link
Member

It looks like you have some problems with node-gyp on your system. Both the keccak and secp256k1 could not be built on your system. However, if that happens, it should just use the pure JS implementation, so I'm not sure if that is actually what is causing npm to fail.

I think npm usually stops immediately as soon as something essential fails, so the last lines of the log would be the most important.

To speed up the install you can try to remove the puppeteer package from the dev dependencies. I think then chromium shouldn't be downloaded anymore.

@cherrygot-personal
Copy link
Author

Hmm, you're right. It does show that JS implementation will be used as a fallback. Updating npm-gyp was a great help. Errors reduced and things became clear. I still am encountering some errors and warnings. Here's the complete output (after excluding puppeteer):


> airgap-wallet@0.0.1 extension:prepare /run/media/FedUser/Stuffffff/Programming/Web/Direct_Clients/airgap-wallet
> cd web-extension && npm install


> scrypt@6.0.3 preinstall /run/media/FedUser/Stuffffff/Programming/Web/Direct_Clients/airgap-wallet/web-extension/node_modules/scrypt
> node node-scrypt-preinstall.js


> scrypt@6.0.3 install /run/media/FedUser/Stuffffff/Programming/Web/Direct_Clients/airgap-wallet/web-extension/node_modules/scrypt
> node-gyp rebuild

make: Entering directory '/run/media/FedUser/Stuffffff/Programming/Web/Direct_Clients/airgap-wallet/web-extension/node_modules/scrypt/build'
  SOLINK_MODULE(target) Release/obj.target/copied_files.node
  COPY Release/copied_files.node
  CC(target) Release/obj.target/scrypt_wrapper/src/util/memlimit.o
  CC(target) Release/obj.target/scrypt_wrapper/src/scryptwrapper/keyderivation.o
  CC(target) Release/obj.target/scrypt_wrapper/src/scryptwrapper/pickparams.o
  CC(target) Release/obj.target/scrypt_wrapper/src/scryptwrapper/hash.o
  AR(target) Release/obj.target/scrypt_wrapper.a
  COPY Release/scrypt_wrapper.a
  CC(target) Release/obj.target/scrypt_lib/scrypt/scrypt-1.2.0/lib/crypto/crypto_scrypt.o
  CC(target) Release/obj.target/scrypt_lib/scrypt/scrypt-1.2.0/lib/crypto/crypto_scrypt_smix.o
  CC(target) Release/obj.target/scrypt_lib/scrypt/scrypt-1.2.0/libcperciva/util/warnp.o
  CC(target) Release/obj.target/scrypt_lib/scrypt/scrypt-1.2.0/libcperciva/alg/sha256.o
  CC(target) Release/obj.target/scrypt_lib/scrypt/scrypt-1.2.0/libcperciva/util/insecure_memzero.o
  CC(target) Release/obj.target/scrypt_lib/scrypt/scrypt-1.2.0/lib/scryptenc/scryptenc_cpuperf.o
  AR(target) Release/obj.target/scrypt_lib.a
  COPY Release/scrypt_lib.a
  CXX(target) Release/obj.target/scrypt/src/node-boilerplate/scrypt_common.o
In file included from ../../nan/nan_converters.h:67:0,
                 from ../../nan/nan.h:202,
                 from ../src/node-boilerplate/scrypt_common.cc:28:
../../nan/nan_converters_43_inl.h: In static member function ‘static Nan::imp::ToFactoryBase<v8::Boolean>::return_t Nan::imp::ToFactory<v8::Boolean>::convert(v8::Local<v8::Value>)’:
../../nan/nan_converters_43_inl.h:18:51: warning: ‘v8::MaybeLocal<v8::Boolean> v8::Value::ToBoolean(v8::Local<v8::Context>) const’ is deprecated: ToBoolean can never throw. Use Local version. [-Wdeprecated-declarations]
       val->To ## TYPE(isolate->GetCurrentContext())                            \
                                                   ^
../../nan/nan_converters_43_inl.h:22:1: note: in expansion of macro ‘X’
 X(Boolean)
 ^
In file included from /home/FedUser/.cache/node-gyp/12.13.1/include/node/v8-internal.h:14:0,
                 from /home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:25,
                 from /home/FedUser/.cache/node-gyp/12.13.1/include/node/node.h:63,
                 from ../../nan/nan.h:51,
                 from ../src/node-boilerplate/scrypt_common.cc:28:
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:2568:59: note: declared here
                 V8_WARN_UNUSED_RESULT MaybeLocal<Boolean> ToBoolean(
                                                           ^
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8config.h:311:3: note: in definition of macro ‘V8_DEPRECATED’
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
In file included from ../../nan/nan_converters.h:67:0,
                 from ../../nan/nan.h:202,
                 from ../src/node-boilerplate/scrypt_common.cc:28:
../../nan/nan_converters_43_inl.h: In static member function ‘static Nan::imp::ValueFactoryBase<bool>::return_t Nan::imp::ToFactory<bool>::convert(v8::Local<v8::Value>)’:
../../nan/nan_converters_43_inl.h:37:57: warning: ‘v8::Maybe<bool> v8::Value::BooleanValue(v8::Local<v8::Context>) const’ is deprecated: BooleanValue can never throw. Use Isolate version. [-Wdeprecated-declarations]
   return val->NAME ## Value(isolate->GetCurrentContext());                     \
                                                         ^
../../nan/nan_converters_43_inl.h:40:1: note: in expansion of macro ‘X’
 X(bool, Boolean)
 ^
In file included from /home/FedUser/.cache/node-gyp/12.13.1/include/node/v8-internal.h:14:0,
                 from /home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:25,
                 from /home/FedUser/.cache/node-gyp/12.13.1/include/node/node.h:63,
                 from ../../nan/nan.h:51,
                 from ../src/node-boilerplate/scrypt_common.cc:28:
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:2606:51: note: declared here
                 V8_WARN_UNUSED_RESULT Maybe<bool> BooleanValue(
                                                   ^
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8config.h:311:3: note: in definition of macro ‘V8_DEPRECATED’
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
In file included from ../../nan/nan_new.h:189:0,
                 from ../../nan/nan.h:203,
                 from ../src/node-boilerplate/scrypt_common.cc:28:
../../nan/nan_implementation_12_inl.h: In static member function ‘static Nan::imp::FactoryBase<v8::Function>::return_t Nan::imp::Factory<v8::Function>::New(Nan::FunctionCallback, v8::Local<v8::Value>)’:
../../nan/nan_implementation_12_inl.h:105:32: error: no matching function for call to ‘v8::Function::New(v8::Isolate*&, void (&)(const v8::FunctionCallbackInfo<v8::Value>&), v8::Local<v8::Object>&)’
                           , obj));
                                ^
In file included from /home/FedUser/.cache/node-gyp/12.13.1/include/node/node.h:63:0,
                 from ../../nan/nan.h:51,
                 from ../src/node-boilerplate/scrypt_common.cc:28:
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:4170:31: note: candidate: static v8::MaybeLocal<v8::Function> v8::Function::New(v8::Local<v8::Context>, v8::FunctionCallback, v8::Local<v8::Value>, int, v8::ConstructorBehavior, v8::SideEffectType)
   static MaybeLocal<Function> New(
                               ^~~
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:4170:31: note:   no known conversion for argument 1 from ‘v8::Isolate*’ to ‘v8::Local<v8::Context>’
In file included from ../../nan/nan_new.h:189:0,
                 from ../../nan/nan.h:203,
                 from ../src/node-boilerplate/scrypt_common.cc:28:
../../nan/nan_implementation_12_inl.h: In static member function ‘static Nan::imp::FactoryBase<v8::StringObject>::return_t Nan::imp::Factory<v8::StringObject>::New(v8::Local<v8::String>)’:
../../nan/nan_implementation_12_inl.h:337:37: error: no matching function for call to ‘v8::StringObject::New(v8::Local<v8::String>&)’
   return v8::StringObject::New(value).As<v8::StringObject>();
                                     ^
In file included from /home/FedUser/.cache/node-gyp/12.13.1/include/node/node.h:63:0,
                 from ../../nan/nan.h:51,
                 from ../src/node-boilerplate/scrypt_common.cc:28:
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:5426:23: note: candidate: static v8::Local<v8::Value> v8::StringObject::New(v8::Isolate*, v8::Local<v8::String>)
   static Local<Value> New(Isolate* isolate, Local<String> value);
                       ^~~
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:5426:23: note:   candidate expects 2 arguments, 1 provided
In file included from ../../nan/nan_new.h:189:0,
                 from ../../nan/nan.h:203,
                 from ../src/node-boilerplate/scrypt_common.cc:28:
../../nan/nan_implementation_12_inl.h:337:58: error: expected primary-expression before ‘>’ token
   return v8::StringObject::New(value).As<v8::StringObject>();
                                                          ^
../../nan/nan_implementation_12_inl.h:337:60: error: expected primary-expression before ‘)’ token
   return v8::StringObject::New(value).As<v8::StringObject>();
                                                            ^
In file included from ../src/node-boilerplate/scrypt_common.cc:28:0:
../../nan/nan.h: In constructor ‘Nan::Utf8String::Utf8String(v8::Local<v8::Value>)’:
../../nan/nan.h:1034:53: error: no matching function for call to ‘v8::Value::ToString()’
       v8::Local<v8::String> string = from->ToString();
                                                     ^
In file included from /home/FedUser/.cache/node-gyp/12.13.1/include/node/node.h:63:0,
                 from ../../nan/nan.h:51,
                 from ../src/node-boilerplate/scrypt_common.cc:28:
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:2572:44: note: candidate: v8::MaybeLocal<v8::String> v8::Value::ToString(v8::Local<v8::Context>) const
   V8_WARN_UNUSED_RESULT MaybeLocal<String> ToString(
                                            ^~~~~~~~
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:2572:44: note:   candidate expects 1 argument, 0 provided
In file included from /home/FedUser/.cache/node-gyp/12.13.1/include/node/v8-internal.h:14:0,
                 from /home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:25,
                 from /home/FedUser/.cache/node-gyp/12.13.1/include/node/node.h:63,
                 from ../../nan/nan.h:51,
                 from ../src/node-boilerplate/scrypt_common.cc:28:
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:2588:31: note: candidate: v8::Local<v8::String> v8::Value::ToString(v8::Isolate*) const
                 Local<String> ToString(Isolate* isolate) const);
                               ^
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8config.h:311:3: note: in definition of macro ‘V8_DEPRECATED’
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:2588:31: note:   candidate expects 1 argument, 0 provided
                 Local<String> ToString(Isolate* isolate) const);
                               ^
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8config.h:311:3: note: in definition of macro ‘V8_DEPRECATED’
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
In file included from ../src/node-boilerplate/scrypt_common.cc:28:0:
../../nan/nan.h:1044:74: error: no matching function for call to ‘v8::String::WriteUtf8(char*&, int, int, const int&)’
         length_ = string->WriteUtf8(str_, static_cast<int>(len), 0, flags);
                                                                          ^
In file included from /home/FedUser/.cache/node-gyp/12.13.1/include/node/node.h:63:0,
                 from ../../nan/nan.h:51,
                 from ../src/node-boilerplate/scrypt_common.cc:28:
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:2782:7: note: candidate: int v8::String::WriteUtf8(v8::Isolate*, char*, int, int*, int) const
   int WriteUtf8(Isolate* isolate, char* buffer, int length = -1,
       ^~~~~~~~~
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:2782:7: note:   no known conversion for argument 1 from ‘char*’ to ‘v8::Isolate*’
In file included from ../src/node-boilerplate/scrypt_common.cc:28:0:
../../nan/nan.h: In member function ‘void Nan::AsyncWorker::SaveToPersistent(const char*, const v8::Local<v8::Value>&)’:
../../nan/nan.h:1818:64: warning: ‘bool v8::Object::Set(v8::Local<v8::Value>, v8::Local<v8::Value>)’ is deprecated: Use maybe version [-Wdeprecated-declarations]
     New(persistentHandle)->Set(New(key).ToLocalChecked(), value);
                                                                ^
In file included from /home/FedUser/.cache/node-gyp/12.13.1/include/node/v8-internal.h:14:0,
                 from /home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:25,
                 from /home/FedUser/.cache/node-gyp/12.13.1/include/node/node.h:63,
                 from ../../nan/nan.h:51,
                 from ../src/node-boilerplate/scrypt_common.cc:28:
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:3403:22: note: declared here
                 bool Set(Local<Value> key, Local<Value> value));
                      ^
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8config.h:311:3: note: in definition of macro ‘V8_DEPRECATED’
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
In file included from ../src/node-boilerplate/scrypt_common.cc:28:0:
../../nan/nan.h: In member function ‘void Nan::AsyncWorker::SaveToPersistent(const v8::Local<v8::String>&, const v8::Local<v8::Value>&)’:
../../nan/nan.h:1824:42: warning: ‘bool v8::Object::Set(v8::Local<v8::Value>, v8::Local<v8::Value>)’ is deprecated: Use maybe version [-Wdeprecated-declarations]
     New(persistentHandle)->Set(key, value);
                                          ^
In file included from /home/FedUser/.cache/node-gyp/12.13.1/include/node/v8-internal.h:14:0,
                 from /home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:25,
                 from /home/FedUser/.cache/node-gyp/12.13.1/include/node/node.h:63,
                 from ../../nan/nan.h:51,
                 from ../src/node-boilerplate/scrypt_common.cc:28:
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:3403:22: note: declared here
                 bool Set(Local<Value> key, Local<Value> value));
                      ^
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8config.h:311:3: note: in definition of macro ‘V8_DEPRECATED’
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
In file included from ../src/node-boilerplate/scrypt_common.cc:28:0:
../../nan/nan.h: In member function ‘void Nan::AsyncWorker::SaveToPersistent(uint32_t, const v8::Local<v8::Value>&)’:
../../nan/nan.h:1830:44: warning: ‘bool v8::Object::Set(uint32_t, v8::Local<v8::Value>)’ is deprecated: Use maybe version [-Wdeprecated-declarations]
     New(persistentHandle)->Set(index, value);
                                            ^
In file included from /home/FedUser/.cache/node-gyp/12.13.1/include/node/v8-internal.h:14:0,
                 from /home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:25,
                 from /home/FedUser/.cache/node-gyp/12.13.1/include/node/node.h:63,
                 from ../../nan/nan.h:51,
                 from ../src/node-boilerplate/scrypt_common.cc:28:
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:3412:22: note: declared here
                 bool Set(uint32_t index, Local<Value> value));
                      ^
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8config.h:311:3: note: in definition of macro ‘V8_DEPRECATED’
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
In file included from ../src/node-boilerplate/scrypt_common.cc:28:0:
../../nan/nan.h: In member function ‘v8::Local<v8::Value> Nan::AsyncWorker::GetFromPersistent(const char*) const’:
../../nan/nan.h:1836:61: warning: ‘v8::Local<v8::Value> v8::Object::Get(v8::Local<v8::Value>)’ is deprecated: Use maybe version [-Wdeprecated-declarations]
         New(persistentHandle)->Get(New(key).ToLocalChecked()));
                                                             ^
In file included from /home/FedUser/.cache/node-gyp/12.13.1/include/node/v8-internal.h:14:0,
                 from /home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:25,
                 from /home/FedUser/.cache/node-gyp/12.13.1/include/node/node.h:63,
                 from ../../nan/nan.h:51,
                 from ../src/node-boilerplate/scrypt_common.cc:28:
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:3457:51: note: declared here
   V8_DEPRECATED("Use maybe version", Local<Value> Get(Local<Value> key));
                                                   ^
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8config.h:311:3: note: in definition of macro ‘V8_DEPRECATED’
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
In file included from ../src/node-boilerplate/scrypt_common.cc:28:0:
../../nan/nan.h: In member function ‘v8::Local<v8::Value> Nan::AsyncWorker::GetFromPersistent(const v8::Local<v8::String>&) const’:
../../nan/nan.h:1842:55: warning: ‘v8::Local<v8::Value> v8::Object::Get(v8::Local<v8::Value>)’ is deprecated: Use maybe version [-Wdeprecated-declarations]
     return scope.Escape(New(persistentHandle)->Get(key));
                                                       ^
In file included from /home/FedUser/.cache/node-gyp/12.13.1/include/node/v8-internal.h:14:0,
                 from /home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:25,
                 from /home/FedUser/.cache/node-gyp/12.13.1/include/node/node.h:63,
                 from ../../nan/nan.h:51,
                 from ../src/node-boilerplate/scrypt_common.cc:28:
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:3457:51: note: declared here
   V8_DEPRECATED("Use maybe version", Local<Value> Get(Local<Value> key));
                                                   ^
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8config.h:311:3: note: in definition of macro ‘V8_DEPRECATED’
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
In file included from ../src/node-boilerplate/scrypt_common.cc:28:0:
../../nan/nan.h: In member function ‘v8::Local<v8::Value> Nan::AsyncWorker::GetFromPersistent(uint32_t) const’:
../../nan/nan.h:1847:57: warning: ‘v8::Local<v8::Value> v8::Object::Get(uint32_t)’ is deprecated: Use maybe version [-Wdeprecated-declarations]
     return scope.Escape(New(persistentHandle)->Get(index));
                                                         ^
In file included from /home/FedUser/.cache/node-gyp/12.13.1/include/node/v8-internal.h:14:0,
                 from /home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:25,
                 from /home/FedUser/.cache/node-gyp/12.13.1/include/node/node.h:63,
                 from ../../nan/nan.h:51,
                 from ../src/node-boilerplate/scrypt_common.cc:28:
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:3461:51: note: declared here
   V8_DEPRECATED("Use maybe version", Local<Value> Get(uint32_t index));
                                                   ^
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8config.h:311:3: note: in definition of macro ‘V8_DEPRECATED’
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
In file included from /usr/include/c++/7/cassert:44:0,
                 from /home/FedUser/.cache/node-gyp/12.13.1/include/node/node_object_wrap.h:26,
                 from ../../nan/nan.h:53,
                 from ../src/node-boilerplate/scrypt_common.cc:28:
../../nan/nan_object_wrap.h: In destructor ‘virtual Nan::ObjectWrap::~ObjectWrap()’:
../../nan/nan_object_wrap.h:24:25: error: ‘class Nan::Persistent<v8::Object>’ has no member named ‘IsNearDeath’
     assert(persistent().IsNearDeath());
                         ^
In file included from ../../nan/nan.h:2657:0,
                 from ../src/node-boilerplate/scrypt_common.cc:28:
../../nan/nan_object_wrap.h: In member function ‘void Nan::ObjectWrap::MakeWeak()’:
../../nan/nan_object_wrap.h:67:34: warning: ‘void v8::PersistentBase<T>::MarkIndependent() [with T = v8::Object]’ is deprecated: Weak objects are always considered independent. Use TracedGlobal when trying to use EmbedderHeapTracer. Use a strong handle when trying to keep an object alive. [-Wdeprecated-declarations]
     persistent().MarkIndependent();
                                  ^
In file included from /home/FedUser/.cache/node-gyp/12.13.1/include/node/v8-internal.h:14:0,
                 from /home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:25,
                 from /home/FedUser/.cache/node-gyp/12.13.1/include/node/node.h:63,
                 from ../../nan/nan.h:51,
                 from ../src/node-boilerplate/scrypt_common.cc:28:
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8.h:567:22: note: declared here
       V8_INLINE void MarkIndependent());
                      ^
/home/FedUser/.cache/node-gyp/12.13.1/include/node/v8config.h:311:3: note: in definition of macro ‘V8_DEPRECATED’
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
In file included from /usr/include/c++/7/cassert:44:0,
                 from /home/FedUser/.cache/node-gyp/12.13.1/include/node/node_object_wrap.h:26,
                 from ../../nan/nan.h:53,
                 from ../src/node-boilerplate/scrypt_common.cc:28:
../../nan/nan_object_wrap.h: In static member function ‘static void Nan::ObjectWrap::WeakCallback(const v8::WeakCallbackInfo<Nan::ObjectWrap>&)’:
../../nan/nan_object_wrap.h:124:26: error: ‘class Nan::Persistent<v8::Object>’ has no member named ‘IsNearDeath’
     assert(wrap->handle_.IsNearDeath());
                          ^
make: *** [scrypt.target.mk:129: Release/obj.target/scrypt/src/node-boilerplate/scrypt_common.o] Error 1
make: Leaving directory '/run/media/FedUser/Stuffffff/Programming/Web/Direct_Clients/airgap-wallet/web-extension/node_modules/scrypt/build'
gyp ERR! build error 
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack     at ChildProcess.onExit (/home/FedUser/.npm-global/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:194:23)
gyp ERR! stack     at ChildProcess.emit (events.js:210:5)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:272:12)
gyp ERR! System Linux 4.18.19-100.fc27.x86_64
gyp ERR! command "/usr/local/n/versions/node/12.13.1/bin/node" "/home/FedUser/.npm-global/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /run/media/FedUser/Stuffffff/Programming/Web/Direct_Clients/airgap-wallet/web-extension/node_modules/scrypt
gyp ERR! node -v v12.13.1
gyp ERR! node-gyp -v v5.1.0
gyp ERR! not ok 
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.2.4 (node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.2.4: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})

npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! scrypt@6.0.3 install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the scrypt@6.0.3 install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /home/FedUser/.npm/_logs/2020-03-16T13_41_08_214Z-debug.log
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! airgap-wallet@0.0.1 extension:prepare: `cd web-extension && npm install`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the airgap-wallet@0.0.1 extension:prepare script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /home/FedUser/.npm/_logs/2020-03-16T13_41_08_303Z-debug.log

This time, I was able to narrow down the problem. Here's the culprit.

                 from /home/FedUser/.cache/node-gyp/12.13.1/include/node/node_object_wrap.h:26,
                 from ../../nan/nan.h:53,
                 from ../src/node-boilerplate/scrypt_common.cc:28:
../../nan/nan_object_wrap.h: In static member function ‘static void Nan::ObjectWrap::WeakCallback(const v8::WeakCallbackInfo<Nan::ObjectWrap>&)’:
../../nan/nan_object_wrap.h:124:26: error: ‘class Nan::Persistent<v8::Object>’ has no member named ‘IsNearDeath’
     assert(wrap->handle_.IsNearDeath());
                          ^

Not sure where this leads.

@cherrygot-personal
Copy link
Author

It was an issue with web3. You may want to update it from beta to stable release as it no longer works with Node 12. Here's the link to the issue. web3/web3.js#2913 (comment)

@AndreasGassmann
Copy link
Member

Thanks for reporting what the issue was. We'll look into this because web3 is not a direct dependency anymore. We'll have to track down the package that still uses it.

@AndreasGassmann
Copy link
Member

AndreasGassmann commented Jul 20, 2020

I just checked and it looks like none of our dependencies use web3 anymore, so this issue should be solved.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants