tum-esi / shadow-thing

Creates and deploys a virtual Web of Things servient based on its Thing Description

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Build fails

egekorkan opened this issue · comments

npm install virtual-thing or after cloning from GitHub, the installation fails with the following error:


> virtual-thing@0.4.1 preinstall /home/eko/Gitlab/virtual-thing
> rm -rf thingweb.node-wot && rm -rf node_modules && rm -rf package-lock.json


> rdf-canonize@0.2.5 install /home/eko/Gitlab/virtual-thing/node_modules/rdf-canonize
> node-gyp rebuild

make: Entering directory '/home/eko/Gitlab/virtual-thing/node_modules/rdf-canonize/build'
  CXX(target) Release/obj.target/urdna2015/lib/native/IdentifierIssuer.o
  CXX(target) Release/obj.target/urdna2015/lib/native/MessageDigest.o
  CXX(target) Release/obj.target/urdna2015/lib/native/NQuads.o
  CXX(target) Release/obj.target/urdna2015/lib/native/addon.o
In file included from ../../nan/nan_converters.h:67,
                 from ../../nan/nan.h:221,
                 from ../lib/native/addon.cc:10:
../../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]
   18 |       val->To ## TYPE(isolate->GetCurrentContext())                            \
      |                                                   ^
../../nan/nan_converters_43_inl.h:22:1: note: in expansion of macro ‘X’
   22 | X(Boolean)
      | ^
In file included from /home/eko/.cache/node-gyp/12.9.1/include/node/v8-internal.h:14,
                 from /home/eko/.cache/node-gyp/12.9.1/include/node/v8.h:25,
                 from /home/eko/.cache/node-gyp/12.9.1/include/node/node.h:63,
                 from ../../nan/nan.h:52,
                 from ../lib/native/addon.cc:10:
/home/eko/.cache/node-gyp/12.9.1/include/node/v8.h:2537:59: note: declared here
 2537 |                 V8_WARN_UNUSED_RESULT MaybeLocal<Boolean> ToBoolean(
      |                                                           ^~~~~~~~~
/home/eko/.cache/node-gyp/12.9.1/include/node/v8config.h:311:3: note: in definition of macro ‘V8_DEPRECATED’
  311 |   declarator __attribute__((deprecated(message)))
      |   ^~~~~~~~~~
In file included from ../../nan/nan_converters.h:67,
                 from ../../nan/nan.h:221,
                 from ../lib/native/addon.cc:10:
../../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]
   37 |   return val->NAME ## Value(isolate->GetCurrentContext());                     \
      |                                                         ^
../../nan/nan_converters_43_inl.h:40:1: note: in expansion of macro ‘X’
   40 | X(bool, Boolean)
      | ^
In file included from /home/eko/.cache/node-gyp/12.9.1/include/node/v8-internal.h:14,
                 from /home/eko/.cache/node-gyp/12.9.1/include/node/v8.h:25,
                 from /home/eko/.cache/node-gyp/12.9.1/include/node/node.h:63,
                 from ../../nan/nan.h:52,
                 from ../lib/native/addon.cc:10:
/home/eko/.cache/node-gyp/12.9.1/include/node/v8.h:2575:51: note: declared here
 2575 |                 V8_WARN_UNUSED_RESULT Maybe<bool> BooleanValue(
      |                                                   ^~~~~~~~~~~~
/home/eko/.cache/node-gyp/12.9.1/include/node/v8config.h:311:3: note: in definition of macro ‘V8_DEPRECATED’
  311 |   declarator __attribute__((deprecated(message)))
      |   ^~~~~~~~~~
In file included from ../../nan/nan_new.h:189,
                 from ../../nan/nan.h:222,
                 from ../lib/native/addon.cc:10:
../../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:103:42: error: cannot convert ‘v8::Isolate*’ to ‘v8::Local<v8::Context>’
  103 |   return scope.Escape(v8::Function::New( isolate
      |                                          ^~~~~~~
      |                                          |
      |                                          v8::Isolate*
In file included from /home/eko/.cache/node-gyp/12.9.1/include/node/node.h:63,
                 from ../../nan/nan.h:52,
                 from ../lib/native/addon.cc:10:
/home/eko/.cache/node-gyp/12.9.1/include/node/v8.h:4139:22: note:   initializing argument 1 of ‘static v8::MaybeLocal<v8::Function> v8::Function::New(v8::Local<v8::Context>, v8::FunctionCallback, v8::Local<v8::Value>, int, v8::ConstructorBehavior, v8::SideEffectType)’
 4139 |       Local<Context> context, FunctionCallback callback,
      |       ~~~~~~~~~~~~~~~^~~~~~~
In file included from ../lib/native/addon.cc:10:
../../nan/nan.h: In constructor ‘Nan::Utf8String::Utf8String(v8::Local<v8::Value>)’:
../../nan/nan.h:1064:78: warning: ‘v8::Local<v8::String> v8::Value::ToString(v8::Isolate*) const’ is deprecated: Use maybe version [-Wdeprecated-declarations]
 1064 |       v8::Local<v8::String> string = from->ToString(v8::Isolate::GetCurrent());
      |                                                                              ^
In file included from /home/eko/.cache/node-gyp/12.9.1/include/node/v8-internal.h:14,
                 from /home/eko/.cache/node-gyp/12.9.1/include/node/v8.h:25,
                 from /home/eko/.cache/node-gyp/12.9.1/include/node/node.h:63,
                 from ../../nan/nan.h:52,
                 from ../lib/native/addon.cc:10:
/home/eko/.cache/node-gyp/12.9.1/include/node/v8.h:2557:31: note: declared here
 2557 |                 Local<String> ToString(Isolate* isolate) const);
      |                               ^~~~~~~~
/home/eko/.cache/node-gyp/12.9.1/include/node/v8config.h:311:3: note: in definition of macro ‘V8_DEPRECATED’
  311 |   declarator __attribute__((deprecated(message)))
      |   ^~~~~~~~~~
In file included from ../lib/native/addon.cc:10:
../../nan/nan.h: In member function ‘void Nan::AsyncWorker::SaveToPersistent(const char*, const v8::Local<v8::Value>&)’:
../../nan/nan.h:1855:64: warning: ‘bool v8::Object::Set(v8::Local<v8::Value>, v8::Local<v8::Value>)’ is deprecated: Use maybe version [-Wdeprecated-declarations]
 1855 |     New(persistentHandle)->Set(New(key).ToLocalChecked(), value);
      |                                                                ^
In file included from /home/eko/.cache/node-gyp/12.9.1/include/node/v8-internal.h:14,
                 from /home/eko/.cache/node-gyp/12.9.1/include/node/v8.h:25,
                 from /home/eko/.cache/node-gyp/12.9.1/include/node/node.h:63,
                 from ../../nan/nan.h:52,
                 from ../lib/native/addon.cc:10:
/home/eko/.cache/node-gyp/12.9.1/include/node/v8.h:3372:22: note: declared here
 3372 |                 bool Set(Local<Value> key, Local<Value> value));
      |                      ^~~
/home/eko/.cache/node-gyp/12.9.1/include/node/v8config.h:311:3: note: in definition of macro ‘V8_DEPRECATED’
  311 |   declarator __attribute__((deprecated(message)))
      |   ^~~~~~~~~~
In file included from ../lib/native/addon.cc:10:
../../nan/nan.h: In member function ‘void Nan::AsyncWorker::SaveToPersistent(const v8::Local<v8::String>&, const v8::Local<v8::Value>&)’:
../../nan/nan.h:1861:42: warning: ‘bool v8::Object::Set(v8::Local<v8::Value>, v8::Local<v8::Value>)’ is deprecated: Use maybe version [-Wdeprecated-declarations]
 1861 |     New(persistentHandle)->Set(key, value);
      |                                          ^
In file included from /home/eko/.cache/node-gyp/12.9.1/include/node/v8-internal.h:14,
                 from /home/eko/.cache/node-gyp/12.9.1/include/node/v8.h:25,
                 from /home/eko/.cache/node-gyp/12.9.1/include/node/node.h:63,
                 from ../../nan/nan.h:52,
                 from ../lib/native/addon.cc:10:
/home/eko/.cache/node-gyp/12.9.1/include/node/v8.h:3372:22: note: declared here
 3372 |                 bool Set(Local<Value> key, Local<Value> value));
      |                      ^~~
/home/eko/.cache/node-gyp/12.9.1/include/node/v8config.h:311:3: note: in definition of macro ‘V8_DEPRECATED’
  311 |   declarator __attribute__((deprecated(message)))
      |   ^~~~~~~~~~
In file included from ../lib/native/addon.cc:10:
../../nan/nan.h: In member function ‘void Nan::AsyncWorker::SaveToPersistent(uint32_t, const v8::Local<v8::Value>&)’:
../../nan/nan.h:1867:44: warning: ‘bool v8::Object::Set(uint32_t, v8::Local<v8::Value>)’ is deprecated: Use maybe version [-Wdeprecated-declarations]
 1867 |     New(persistentHandle)->Set(index, value);
      |                                            ^
In file included from /home/eko/.cache/node-gyp/12.9.1/include/node/v8-internal.h:14,
                 from /home/eko/.cache/node-gyp/12.9.1/include/node/v8.h:25,
                 from /home/eko/.cache/node-gyp/12.9.1/include/node/node.h:63,
                 from ../../nan/nan.h:52,
                 from ../lib/native/addon.cc:10:
/home/eko/.cache/node-gyp/12.9.1/include/node/v8.h:3381:22: note: declared here
 3381 |                 bool Set(uint32_t index, Local<Value> value));
      |                      ^~~
/home/eko/.cache/node-gyp/12.9.1/include/node/v8config.h:311:3: note: in definition of macro ‘V8_DEPRECATED’
  311 |   declarator __attribute__((deprecated(message)))
      |   ^~~~~~~~~~
In file included from ../lib/native/addon.cc:10:
../../nan/nan.h: In member function ‘v8::Local<v8::Value> Nan::AsyncWorker::GetFromPersistent(const char*) const’:
../../nan/nan.h:1873:61: warning: ‘v8::Local<v8::Value> v8::Object::Get(v8::Local<v8::Value>)’ is deprecated: Use maybe version [-Wdeprecated-declarations]
 1873 |         New(persistentHandle)->Get(New(key).ToLocalChecked()));
      |                                                             ^
In file included from /home/eko/.cache/node-gyp/12.9.1/include/node/v8-internal.h:14,
                 from /home/eko/.cache/node-gyp/12.9.1/include/node/v8.h:25,
                 from /home/eko/.cache/node-gyp/12.9.1/include/node/node.h:63,
                 from ../../nan/nan.h:52,
                 from ../lib/native/addon.cc:10:
/home/eko/.cache/node-gyp/12.9.1/include/node/v8.h:3425:51: note: declared here
 3425 |   V8_DEPRECATED("Use maybe version", Local<Value> Get(Local<Value> key));
      |                                                   ^~~
/home/eko/.cache/node-gyp/12.9.1/include/node/v8config.h:311:3: note: in definition of macro ‘V8_DEPRECATED’
  311 |   declarator __attribute__((deprecated(message)))
      |   ^~~~~~~~~~
In file included from ../lib/native/addon.cc:10:
../../nan/nan.h: In member function ‘v8::Local<v8::Value> Nan::AsyncWorker::GetFromPersistent(const v8::Local<v8::String>&) const’:
../../nan/nan.h:1879:55: warning: ‘v8::Local<v8::Value> v8::Object::Get(v8::Local<v8::Value>)’ is deprecated: Use maybe version [-Wdeprecated-declarations]
 1879 |     return scope.Escape(New(persistentHandle)->Get(key));
      |                                                       ^
In file included from /home/eko/.cache/node-gyp/12.9.1/include/node/v8-internal.h:14,
                 from /home/eko/.cache/node-gyp/12.9.1/include/node/v8.h:25,
                 from /home/eko/.cache/node-gyp/12.9.1/include/node/node.h:63,
                 from ../../nan/nan.h:52,
                 from ../lib/native/addon.cc:10:
/home/eko/.cache/node-gyp/12.9.1/include/node/v8.h:3425:51: note: declared here
 3425 |   V8_DEPRECATED("Use maybe version", Local<Value> Get(Local<Value> key));
      |                                                   ^~~
/home/eko/.cache/node-gyp/12.9.1/include/node/v8config.h:311:3: note: in definition of macro ‘V8_DEPRECATED’
  311 |   declarator __attribute__((deprecated(message)))
      |   ^~~~~~~~~~
In file included from ../lib/native/addon.cc:10:
../../nan/nan.h: In member function ‘v8::Local<v8::Value> Nan::AsyncWorker::GetFromPersistent(uint32_t) const’:
../../nan/nan.h:1884:57: warning: ‘v8::Local<v8::Value> v8::Object::Get(uint32_t)’ is deprecated: Use maybe version [-Wdeprecated-declarations]
 1884 |     return scope.Escape(New(persistentHandle)->Get(index));
      |                                                         ^
In file included from /home/eko/.cache/node-gyp/12.9.1/include/node/v8-internal.h:14,
                 from /home/eko/.cache/node-gyp/12.9.1/include/node/v8.h:25,
                 from /home/eko/.cache/node-gyp/12.9.1/include/node/node.h:63,
                 from ../../nan/nan.h:52,
                 from ../lib/native/addon.cc:10:
/home/eko/.cache/node-gyp/12.9.1/include/node/v8.h:3429:51: note: declared here
 3429 |   V8_DEPRECATED("Use maybe version", Local<Value> Get(uint32_t index));
      |                                                   ^~~
/home/eko/.cache/node-gyp/12.9.1/include/node/v8config.h:311:3: note: in definition of macro ‘V8_DEPRECATED’
  311 |   declarator __attribute__((deprecated(message)))
      |   ^~~~~~~~~~
In file included from ../lib/native/addon.cc:10:
../../nan/nan.h: In function ‘void Nan::AsyncQueueWorker(Nan::AsyncWorker*)’:
../../nan/nan.h:2208:62: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]
 2208 |     , reinterpret_cast<uv_after_work_cb>(AsyncExecuteComplete)
      |                                                              ^
In file included from /usr/include/c++/9.1.0/cassert:44,
                 from /home/eko/.cache/node-gyp/12.9.1/include/node/node_object_wrap.h:26,
                 from ../../nan/nan.h:54,
                 from ../lib/native/addon.cc:10:
../../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’
   24 |     assert(persistent().IsNearDeath());
      |                         ^~~~~~~~~~~
In file included from ../../nan/nan.h:2698,
                 from ../lib/native/addon.cc:10:
../../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]
   67 |     persistent().MarkIndependent();
      |                                  ^
In file included from /home/eko/.cache/node-gyp/12.9.1/include/node/v8-internal.h:14,
                 from /home/eko/.cache/node-gyp/12.9.1/include/node/v8.h:25,
                 from /home/eko/.cache/node-gyp/12.9.1/include/node/node.h:63,
                 from ../../nan/nan.h:52,
                 from ../lib/native/addon.cc:10:
/home/eko/.cache/node-gyp/12.9.1/include/node/v8.h:567:22: note: declared here
  567 |       V8_INLINE void MarkIndependent());
      |                      ^~~~~~~~~~~~~~~
/home/eko/.cache/node-gyp/12.9.1/include/node/v8config.h:311:3: note: in definition of macro ‘V8_DEPRECATED’
  311 |   declarator __attribute__((deprecated(message)))
      |   ^~~~~~~~~~
In file included from /usr/include/c++/9.1.0/cassert:44,
                 from /home/eko/.cache/node-gyp/12.9.1/include/node/node_object_wrap.h:26,
                 from ../../nan/nan.h:54,
                 from ../lib/native/addon.cc:10:
../../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’
  124 |     assert(wrap->handle_.IsNearDeath());
      |                          ^~~~~~~~~~~
../lib/native/addon.cc: At global scope:
../lib/native/addon.cc:28:11: error: ‘v8::Handle’ has not been declared
   28 | using v8::Handle;
      |           ^~~~~~
../lib/native/addon.cc: In member function ‘virtual void Urdna2015Worker::HandleOKCallback()’:
../lib/native/addon.cc:64:27: warning: ‘v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const’ is deprecated [-Wdeprecated-declarations]
   64 |     callback->Call(2, argv);
      |                           ^
In file included from ../lib/native/addon.cc:10:
../../nan/nan.h:1655:3: note: declared here
 1655 |   Call(int argc, v8::Local<v8::Value> argv[]) const {
      |   ^~~~
../lib/native/addon.cc: At global scope:
../lib/native/addon.cc:74:27: error: ‘Handle’ does not name a type
   74 |   Dataset& dataset, const Handle<Array>& datasetArray);
      |                           ^~~~~~
../lib/native/addon.cc:74:33: error: expected ‘,’ or ‘...’ before ‘<’ token
   74 |   Dataset& dataset, const Handle<Array>& datasetArray);
      |                                 ^
../lib/native/addon.cc:77:9: error: ‘Handle’ does not name a type
   77 |   const Handle<Object>& object,
      |         ^~~~~~
../lib/native/addon.cc:77:15: error: expected ‘,’ or ‘...’ before ‘<’ token
   77 |   const Handle<Object>& object,
      |               ^
../lib/native/addon.cc: In function ‘Nan::NAN_METHOD_RETURN_TYPE Main(Nan::NAN_METHOD_ARGS_TYPE)’:
../lib/native/addon.cc:96:3: error: ‘Handle’ was not declared in this scope
   96 |   Handle<Object> object = Handle<Object>::Cast(info[0]);
      |   ^~~~~~
../lib/native/addon.cc:96:16: error: expected primary-expression before ‘>’ token
   96 |   Handle<Object> object = Handle<Object>::Cast(info[0]);
      |                ^
../lib/native/addon.cc:96:18: error: ‘object’ was not declared in this scope
   96 |   Handle<Object> object = Handle<Object>::Cast(info[0]);
      |                  ^~~~~~
../lib/native/addon.cc:96:40: error: expected primary-expression before ‘>’ token
   96 |   Handle<Object> object = Handle<Object>::Cast(info[0]);
      |                                        ^
../lib/native/addon.cc:96:43: error: ‘::Cast’ has not been declared
   96 |   Handle<Object> object = Handle<Object>::Cast(info[0]);
      |                                           ^~~~
../lib/native/addon.cc:103:15: error: expected primary-expression before ‘>’ token
  103 |   Handle<Array> datasetArray =
      |               ^
../lib/native/addon.cc:103:17: error: ‘datasetArray’ was not declared in this scope
  103 |   Handle<Array> datasetArray =
      |                 ^~~~~~~~~~~~
../lib/native/addon.cc:104:17: error: expected primary-expression before ‘>’ token
  104 |     Handle<Array>::Cast(object->Get(New("dataset").ToLocalChecked()));
      |                 ^
../lib/native/addon.cc:104:20: error: ‘::Cast’ has not been declared
  104 |     Handle<Array>::Cast(object->Get(New("dataset").ToLocalChecked()));
      |                    ^~~~
../lib/native/addon.cc: In function ‘Nan::NAN_METHOD_RETURN_TYPE MainSync(Nan::NAN_METHOD_ARGS_TYPE)’:
../lib/native/addon.cc:133:3: error: ‘Handle’ was not declared in this scope
  133 |   Handle<Object> object = Handle<Object>::Cast(info[0]);
      |   ^~~~~~
../lib/native/addon.cc:133:16: error: expected primary-expression before ‘>’ token
  133 |   Handle<Object> object = Handle<Object>::Cast(info[0]);
      |                ^
../lib/native/addon.cc:133:18: error: ‘object’ was not declared in this scope
  133 |   Handle<Object> object = Handle<Object>::Cast(info[0]);
      |                  ^~~~~~
../lib/native/addon.cc:133:40: error: expected primary-expression before ‘>’ token
  133 |   Handle<Object> object = Handle<Object>::Cast(info[0]);
      |                                        ^
../lib/native/addon.cc:133:43: error: ‘::Cast’ has not been declared
  133 |   Handle<Object> object = Handle<Object>::Cast(info[0]);
      |                                           ^~~~
../lib/native/addon.cc:140:15: error: expected primary-expression before ‘>’ token
  140 |   Handle<Array> datasetArray =
      |               ^
../lib/native/addon.cc:140:17: error: ‘datasetArray’ was not declared in this scope
  140 |   Handle<Array> datasetArray =
      |                 ^~~~~~~~~~~~
../lib/native/addon.cc:141:17: error: expected primary-expression before ‘>’ token
  141 |     Handle<Array>::Cast(object->Get(New("dataset").ToLocalChecked()));
      |                 ^
../lib/native/addon.cc:141:20: error: ‘::Cast’ has not been declared
  141 |     Handle<Array>::Cast(object->Get(New("dataset").ToLocalChecked()));
      |                    ^~~~
../lib/native/addon.cc: At global scope:
../lib/native/addon.cc:162:49: error: ‘Handle’ does not name a type
  162 | static bool fillDataset(Dataset& dataset, const Handle<Array>& datasetArray) {
      |                                                 ^~~~~~
../lib/native/addon.cc:162:55: error: expected ‘,’ or ‘...’ before ‘<’ token
  162 | static bool fillDataset(Dataset& dataset, const Handle<Array>& datasetArray) {
      |                                                       ^
../lib/native/addon.cc: In function ‘bool fillDataset(RdfCanonize::Dataset&, int)’:
../lib/native/addon.cc:174:27: error: ‘datasetArray’ was not declared in this scope
  174 |   for(size_t di = 0; di < datasetArray->Length(); ++di) {
      |                           ^~~~~~~~~~~~
../lib/native/addon.cc:175:5: error: ‘Handle’ was not declared in this scope
  175 |     Handle<Object> quad = Handle<Object>::Cast(datasetArray->Get(di));
      |     ^~~~~~
../lib/native/addon.cc:175:18: error: expected primary-expression before ‘>’ token
  175 |     Handle<Object> quad = Handle<Object>::Cast(datasetArray->Get(di));
      |                  ^
../lib/native/addon.cc:175:20: error: ‘quad’ was not declared in this scope; did you mean ‘quad_t’?
  175 |     Handle<Object> quad = Handle<Object>::Cast(datasetArray->Get(di));
      |                    ^~~~
      |                    quad_t
../lib/native/addon.cc:175:40: error: expected primary-expression before ‘>’ token
  175 |     Handle<Object> quad = Handle<Object>::Cast(datasetArray->Get(di));
      |                                        ^
../lib/native/addon.cc:175:43: error: ‘::Cast’ has not been declared
  175 |     Handle<Object> quad = Handle<Object>::Cast(datasetArray->Get(di));
      |                                           ^~~~
../lib/native/addon.cc:179:18: error: expected primary-expression before ‘>’ token
  179 |     Handle<Object> subject =
      |                  ^
../lib/native/addon.cc:179:20: error: ‘subject’ was not declared in this scope; did you mean ‘subjectKey’?
  179 |     Handle<Object> subject =
      |                    ^~~~~~~
      |                    subjectKey
../lib/native/addon.cc:180:20: error: expected primary-expression before ‘>’ token
  180 |       Handle<Object>::Cast(quad->Get(subjectKey));
      |                    ^
../lib/native/addon.cc:180:23: error: ‘::Cast’ has not been declared
  180 |       Handle<Object>::Cast(quad->Get(subjectKey));
      |                       ^~~~
../lib/native/addon.cc:181:18: error: expected primary-expression before ‘>’ token
  181 |     Handle<Object> predicate =
      |                  ^
../lib/native/addon.cc:181:20: error: ‘predicate’ was not declared in this scope; did you mean ‘predicateKey’?
  181 |     Handle<Object> predicate =
      |                    ^~~~~~~~~
      |                    predicateKey
../lib/native/addon.cc:182:20: error: expected primary-expression before ‘>’ token
  182 |       Handle<Object>::Cast(quad->Get(predicateKey));
      |                    ^
../lib/native/addon.cc:182:23: error: ‘::Cast’ has not been declared
  182 |       Handle<Object>::Cast(quad->Get(predicateKey));
      |                       ^~~~
../lib/native/addon.cc:183:18: error: expected primary-expression before ‘>’ token
  183 |     Handle<Object> object =
      |                  ^
../lib/native/addon.cc:183:20: error: ‘object’ was not declared in this scope; did you mean ‘objectKey’?
  183 |     Handle<Object> object =
      |                    ^~~~~~
      |                    objectKey
../lib/native/addon.cc:184:20: error: expected primary-expression before ‘>’ token
  184 |       Handle<Object>::Cast(quad->Get(objectKey));
      |                    ^
../lib/native/addon.cc:184:23: error: ‘::Cast’ has not been declared
  184 |       Handle<Object>::Cast(quad->Get(objectKey));
      |                       ^~~~
../lib/native/addon.cc:185:18: error: expected primary-expression before ‘>’ token
  185 |     Handle<Object> graph =
      |                  ^
../lib/native/addon.cc:185:20: error: ‘graph’ was not declared in this scope; did you mean ‘isgraph’?
  185 |     Handle<Object> graph =
      |                    ^~~~~
      |                    isgraph
../lib/native/addon.cc:186:20: error: expected primary-expression before ‘>’ token
  186 |       Handle<Object>::Cast(quad->Get(graphKey));
      |                    ^
../lib/native/addon.cc:186:23: error: ‘::Cast’ has not been declared
  186 |       Handle<Object>::Cast(quad->Get(graphKey));
      |                       ^~~~
../lib/native/addon.cc: At global scope:
../lib/native/addon.cc:217:9: error: ‘Handle’ does not name a type
  217 |   const Handle<Object>& object,
      |         ^~~~~~
../lib/native/addon.cc:217:15: error: expected ‘,’ or ‘...’ before ‘<’ token
  217 |   const Handle<Object>& object,
      |               ^
../lib/native/addon.cc: In function ‘bool createTerm(RdfCanonize::Term*&, int)’:
../lib/native/addon.cc:222:8: error: ‘object’ was not declared in this scope
  222 |   if(!(object->Has(termTypeKey) && object->Get(termTypeKey)->IsString())) {
      |        ^~~~~~
../lib/native/addon.cc:222:20: error: ‘termTypeKey’ was not declared in this scope
  222 |   if(!(object->Has(termTypeKey) && object->Get(termTypeKey)->IsString())) {
      |                    ^~~~~~~~~~~
../lib/native/addon.cc:229:23: error: ‘object’ was not declared in this scope
  229 |   Utf8String termType(object->Get(termTypeKey));
      |                       ^~~~~~
../lib/native/addon.cc:229:35: error: ‘termTypeKey’ was not declared in this scope; did you mean ‘termType’?
  229 |   Utf8String termType(object->Get(termTypeKey));
      |                                   ^~~~~~~~~~~
      |                                   termType
../lib/native/addon.cc:238:20: error: ‘datatypeKey’ was not declared in this scope
  238 |     if(object->Has(datatypeKey)) {
      |                    ^~~~~~~~~~~
../lib/native/addon.cc:239:7: error: ‘Handle’ was not declared in this scope
  239 |       Handle<Object> datatype =
      |       ^~~~~~
../lib/native/addon.cc:239:20: error: expected primary-expression before ‘>’ token
  239 |       Handle<Object> datatype =
      |                    ^
../lib/native/addon.cc:239:22: error: ‘datatype’ was not declared in this scope
  239 |       Handle<Object> datatype =
      |                      ^~~~~~~~
../lib/native/addon.cc:240:22: error: expected primary-expression before ‘>’ token
  240 |         Handle<Object>::Cast(object->Get(datatypeKey));
      |                      ^
../lib/native/addon.cc:240:25: error: ‘::Cast’ has not been declared
  240 |         Handle<Object>::Cast(object->Get(datatypeKey));
      |                         ^~~~
../lib/native/addon.cc:250:22: error: ‘valueKey’ was not declared in this scope
  250 |         termTypeKey, valueKey, datatypeKey, languageKey)) {
      |                      ^~~~~~~~
../lib/native/addon.cc:250:45: error: ‘languageKey’ was not declared in this scope
  250 |         termTypeKey, valueKey, datatypeKey, languageKey)) {
      |                                             ^~~~~~~~~~~
../lib/native/addon.cc:260:20: error: ‘languageKey’ was not declared in this scope
  260 |     if(object->Has(languageKey)) {
      |                    ^~~~~~~~~~~
../lib/native/addon.cc:272:41: error: ‘valueKey’ was not declared in this scope
  272 |   term->value = *Utf8String(object->Get(valueKey));
      |                                         ^~~~~~~~
In file included from ../../nan/nan.h:52,
                 from ../lib/native/addon.cc:10:
../lib/native/addon.cc: At global scope:
/home/eko/.cache/node-gyp/12.9.1/include/node/node.h:556:43: warning: cast between incompatible function types from ‘void (*)(Nan::ADDON_REGISTER_FUNCTION_ARGS_TYPE)’ {aka ‘void (*)(v8::Local<v8::Object>)’} to ‘node::addon_register_func’ {aka ‘void (*)(v8::Local<v8::Object>, v8::Local<v8::Value>, void*)’} [-Wcast-function-type]
  556 |       (node::addon_register_func) (regfunc),                          \
      |                                           ^
/home/eko/.cache/node-gyp/12.9.1/include/node/node.h:590:3: note: in expansion of macro ‘NODE_MODULE_X’
  590 |   NODE_MODULE_X(modname, regfunc, NULL, 0)  // NOLINT (readability/null_usage)
      |   ^~~~~~~~~~~~~
../lib/native/addon.cc:286:1: note: in expansion of macro ‘NODE_MODULE’
  286 | NODE_MODULE(addon, InitAll)
      | ^~~~~~~~~~~
In file included from /home/eko/.cache/node-gyp/12.9.1/include/node/node.h:63,
                 from ../../nan/nan.h:52,
                 from ../lib/native/addon.cc:10:
/home/eko/.cache/node-gyp/12.9.1/include/node/v8.h: In instantiation of ‘void v8::PersistentBase<T>::SetWeak(P*, typename v8::WeakCallbackInfo<P>::Callback, v8::WeakCallbackType) [with P = node::ObjectWrap; T = v8::Object; typename v8::WeakCallbackInfo<P>::Callback = void (*)(const v8::WeakCallbackInfo<node::ObjectWrap>&)]’:
/home/eko/.cache/node-gyp/12.9.1/include/node/node_object_wrap.h:84:78:   required from here
/home/eko/.cache/node-gyp/12.9.1/include/node/v8.h:9893:16: warning: cast between incompatible function types from ‘v8::WeakCallbackInfo<node::ObjectWrap>::Callback’ {aka ‘void (*)(const v8::WeakCallbackInfo<node::ObjectWrap>&)’} to ‘Callback’ {aka ‘void (*)(const v8::WeakCallbackInfo<void>&)’} [-Wcast-function-type]
 9893 |                reinterpret_cast<Callback>(callback), type);
      |                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/eko/.cache/node-gyp/12.9.1/include/node/v8.h: In instantiation of ‘void v8::PersistentBase<T>::SetWeak(P*, typename v8::WeakCallbackInfo<P>::Callback, v8::WeakCallbackType) [with P = Nan::ObjectWrap; T = v8::Object; typename v8::WeakCallbackInfo<P>::Callback = void (*)(const v8::WeakCallbackInfo<Nan::ObjectWrap>&)]’:
../../nan/nan_object_wrap.h:66:61:   required from here
/home/eko/.cache/node-gyp/12.9.1/include/node/v8.h:9893:16: warning: cast between incompatible function types from ‘v8::WeakCallbackInfo<Nan::ObjectWrap>::Callback’ {aka ‘void (*)(const v8::WeakCallbackInfo<Nan::ObjectWrap>&)’} to ‘Callback’ {aka ‘void (*)(const v8::WeakCallbackInfo<void>&)’} [-Wcast-function-type]
../lib/native/addon.cc:215:13: warning: ‘bool createTerm(RdfCanonize::Term*&, int)’ defined but not used [-Wunused-function]
  215 | static bool createTerm(
      |             ^~~~~~~~~~
../lib/native/addon.cc:162:13: warning: ‘bool fillDataset(RdfCanonize::Dataset&, int)’ defined but not used [-Wunused-function]
  162 | static bool fillDataset(Dataset& dataset, const Handle<Array>& datasetArray) {
      |             ^~~~~~~~~~~
make: *** [urdna2015.target.mk:113: Release/obj.target/urdna2015/lib/native/addon.o] Error 1
make: Leaving directory '/home/eko/Gitlab/virtual-thing/node_modules/rdf-canonize/build'
gyp ERR! build error 
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack     at ChildProcess.onExit (/usr/lib/node_modules/node-gyp/lib/build.js:190:23)
gyp ERR! stack     at ChildProcess.emit (events.js:209:13)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:272:12)
gyp ERR! System Linux 5.2.11-arch1-1-ARCH
gyp ERR! command "/usr/bin/node" "/usr/lib/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /home/eko/Gitlab/virtual-thing/node_modules/rdf-canonize
gyp ERR! node -v v12.9.1
gyp ERR! node-gyp -v v5.0.2
gyp ERR! not ok 
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! rdf-canonize@0.2.5 install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the rdf-canonize@0.2.5 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/eko/.npm/_logs/2019-09-07T16_22_15_820Z-debug.log

I am guessing that it is something to do with node-gyp version ?

It is happening due to jsonld that cannot install rdf-canonize but npm install rdf-canonize works

It can be fixed when removing jsonld and rdf-canonize from package.json and installing them manually from their github repository. I am guessing that it is an issue with versioning

Fixed by updating to jsonld 1.7.0