Thank you,
It fails :
Command Result
volumio@volumio:~$ sudo apt-get update
Get:1 http://raspbian.raspberrypi.org/raspbian buster InRelease [15.0 kB]
Get:2 http://archive.raspberrypi.org/debian buster InRelease [32.6 kB]
Hit:3 https://deb.nodesource.com/node_14.x buster InRelease
Get:4 http://archive.raspberrypi.org/debian buster/main armhf Packages [393 kB]
Fetched 441 kB in 1s (313 kB/s)
Reading package lists... Done
volumio@volumio:~$ sudo apt-get -y install build-essential
Reading package lists... Done
Building dependency tree
Reading state information... Done
build-essential is already the newest version (12.6).
0 upgraded, 0 newly installed, 0 to remove and 14 not upgraded.
volumio@volumio:~$ npm install --prefix "/data/plugins/system_controller/gpio_control" onoff@^1.1.1
> epoll@1.0.2 install /data/plugins/system_controller/gpio_control/node_modules/epoll
> node-gyp rebuild
make: Entering directory '/data/plugins/system_controller/gpio_control/node_modules/epoll/build'
CXX(target) Release/obj.target/epoll/src/epoll.o
In file included from ../../nan/nan_converters.h:67,
from ../../nan/nan.h:202,
from ../src/epoll.cc:15:
../../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:69: error: no matching function for call to 'v8::Value::ToBoolean(v8::Local<v8::Context>)'
val->To ## TYPE(v8::Isolate::GetCurrent()->GetCurrentContext()) \
^
../../nan/nan_converters_43_inl.h:22:1: note: in expansion of macro 'X'
X(Boolean)
^
In file included from ../src/epoll.cc:11:
/home/volumio/.cache/node-gyp/14.15.4/include/node/v8.h:2848:18: note: candidate: 'v8::Local<v8::Boolean> v8::Value::ToBoolean(v8::Isolate*) const'
Local<Boolean> ToBoolean(Isolate* isolate) const;
^~~~~~~~~
/home/volumio/.cache/node-gyp/14.15.4/include/node/v8.h:2848:18: note: no known conversion for argument 1 from 'v8::Local<v8::Context>' to 'v8::Isolate*'
In file included from ../../nan/nan_converters.h:67,
from ../../nan/nan.h:202,
from ../src/epoll.cc:15:
../../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: error: no matching function for call to 'v8::Value::BooleanValue(v8::Local<v8::Context>)'
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 ../src/epoll.cc:11:
/home/volumio/.cache/node-gyp/14.15.4/include/node/v8.h:2858:8: note: candidate: 'bool v8::Value::BooleanValue(v8::Isolate*) const'
bool BooleanValue(Isolate* isolate) const;
^~~~~~~~~~~~
/home/volumio/.cache/node-gyp/14.15.4/include/node/v8.h:2858:8: note: no known conversion for argument 1 from 'v8::Local<v8::Context>' to 'v8::Isolate*'
In file included from ../../nan/nan_new.h:189,
from ../../nan/nan.h:203,
from ../src/epoll.cc:15:
../../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 ../src/epoll.cc:11:
/home/volumio/.cache/node-gyp/14.15.4/include/node/v8.h:4445: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/volumio/.cache/node-gyp/14.15.4/include/node/v8.h:4445: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,
from ../../nan/nan.h:203,
from ../src/epoll.cc:15:
../../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 ../src/epoll.cc:11:
/home/volumio/.cache/node-gyp/14.15.4/include/node/v8.h:5854: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/volumio/.cache/node-gyp/14.15.4/include/node/v8.h:5854:23: note: candidate expects 2 arguments, 1 provided
In file included from ../../nan/nan_new.h:189,
from ../../nan/nan.h:203,
from ../src/epoll.cc:15:
../../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/epoll.cc:15:
../../nan/nan.h: In function 'v8::Local<v8::Value> Nan::MakeCallback(v8::Local<v8::Object>, v8::Local<v8::Function>, int, v8::Local<v8::Value>*)':
../../nan/nan.h:840:60: warning: 'v8::Local<v8::Value> node::MakeCallback(v8::Isolate*, v8::Local<v8::Object>, v8::Local<v8::Function>, int, v8::Local<v8::Value>*)' is deprecated: Use MakeCallback(..., async_context) [-Wdeprecated-declarations]
v8::Isolate::GetCurrent(), target, func, argc, argv);
^
In file included from ../src/epoll.cc:12:
/home/volumio/.cache/node-gyp/14.15.4/include/node/node.h:191:50: note: declared here
NODE_EXTERN v8::Local<v8::Value> MakeCallback(
^~~~~~~~~~~~
/home/volumio/.cache/node-gyp/14.15.4/include/node/node.h:108:42: note: in definition of macro 'NODE_DEPRECATED'
__attribute__((deprecated(message))) declarator
^~~~~~~~~~
In file included from ../src/epoll.cc:15:
../../nan/nan.h:840:60: warning: 'v8::Local<v8::Value> node::MakeCallback(v8::Isolate*, v8::Local<v8::Object>, v8::Local<v8::Function>, int, v8::Local<v8::Value>*)' is deprecated: Use MakeCallback(..., async_context) [-Wdeprecated-declarations]
v8::Isolate::GetCurrent(), target, func, argc, argv);
^
In file included from ../src/epoll.cc:12:
/home/volumio/.cache/node-gyp/14.15.4/include/node/node.h:191:50: note: declared here
NODE_EXTERN v8::Local<v8::Value> MakeCallback(
^~~~~~~~~~~~
/home/volumio/.cache/node-gyp/14.15.4/include/node/node.h:108:42: note: in definition of macro 'NODE_DEPRECATED'
__attribute__((deprecated(message))) declarator
^~~~~~~~~~
In file included from ../src/epoll.cc:15:
../../nan/nan.h: In function 'v8::Local<v8::Value> Nan::MakeCallback(v8::Local<v8::Object>, v8::Local<v8::String>, int, v8::Local<v8::Value>*)':
../../nan/nan.h:855:62: warning: 'v8::Local<v8::Value> node::MakeCallback(v8::Isolate*, v8::Local<v8::Object>, v8::Local<v8::String>, int, v8::Local<v8::Value>*)' is deprecated: Use MakeCallback(..., async_context) [-Wdeprecated-declarations]
v8::Isolate::GetCurrent(), target, symbol, argc, argv);
^
In file included from ../src/epoll.cc:12:
/home/volumio/.cache/node-gyp/14.15.4/include/node/node.h:184:50: note: declared here
NODE_EXTERN v8::Local<v8::Value> MakeCallback(
^~~~~~~~~~~~
/home/volumio/.cache/node-gyp/14.15.4/include/node/node.h:108:42: note: in definition of macro 'NODE_DEPRECATED'
__attribute__((deprecated(message))) declarator
^~~~~~~~~~
In file included from ../src/epoll.cc:15:
../../nan/nan.h:855:62: warning: 'v8::Local<v8::Value> node::MakeCallback(v8::Isolate*, v8::Local<v8::Object>, v8::Local<v8::String>, int, v8::Local<v8::Value>*)' is deprecated: Use MakeCallback(..., async_context) [-Wdeprecated-declarations]
v8::Isolate::GetCurrent(), target, symbol, argc, argv);
^
In file included from ../src/epoll.cc:12:
/home/volumio/.cache/node-gyp/14.15.4/include/node/node.h:184:50: note: declared here
NODE_EXTERN v8::Local<v8::Value> MakeCallback(
^~~~~~~~~~~~
/home/volumio/.cache/node-gyp/14.15.4/include/node/node.h:108:42: note: in definition of macro 'NODE_DEPRECATED'
__attribute__((deprecated(message))) declarator
^~~~~~~~~~
In file included from ../src/epoll.cc:15:
../../nan/nan.h: In function 'v8::Local<v8::Value> Nan::MakeCallback(v8::Local<v8::Object>, const char*, int, v8::Local<v8::Value>*)':
../../nan/nan.h:870:62: warning: 'v8::Local<v8::Value> node::MakeCallback(v8::Isolate*, v8::Local<v8::Object>, const char*, int, v8::Local<v8::Value>*)' is deprecated: Use MakeCallback(..., async_context) [-Wdeprecated-declarations]
v8::Isolate::GetCurrent(), target, method, argc, argv);
^
In file included from ../src/epoll.cc:12:
/home/volumio/.cache/node-gyp/14.15.4/include/node/node.h:177:50: note: declared here
NODE_EXTERN v8::Local<v8::Value> MakeCallback(
^~~~~~~~~~~~
/home/volumio/.cache/node-gyp/14.15.4/include/node/node.h:108:42: note: in definition of macro 'NODE_DEPRECATED'
__attribute__((deprecated(message))) declarator
^~~~~~~~~~
In file included from ../src/epoll.cc:15:
../../nan/nan.h:870:62: warning: 'v8::Local<v8::Value> node::MakeCallback(v8::Isolate*, v8::Local<v8::Object>, const char*, int, v8::Local<v8::Value>*)' is deprecated: Use MakeCallback(..., async_context) [-Wdeprecated-declarations]
v8::Isolate::GetCurrent(), target, method, argc, argv);
^
In file included from ../src/epoll.cc:12:
/home/volumio/.cache/node-gyp/14.15.4/include/node/node.h:177:50: note: declared here
NODE_EXTERN v8::Local<v8::Value> MakeCallback(
^~~~~~~~~~~~
/home/volumio/.cache/node-gyp/14.15.4/include/node/node.h:108:42: note: in definition of macro 'NODE_DEPRECATED'
__attribute__((deprecated(message))) declarator
^~~~~~~~~~
In file included from ../src/epoll.cc:15:
../../nan/nan.h: In constructor 'Nan::Utf8String::Utf8String(v8::Local<v8::Value>)':
../../nan/nan.h:916:53: error: no matching function for call to 'v8::Value::ToString()'
v8::Local<v8::String> string = from->ToString();
^
In file included from ../src/epoll.cc:11:
/home/volumio/.cache/node-gyp/14.15.4/include/node/v8.h:2810:44: note: candidate: 'v8::MaybeLocal<v8::String> v8::Value::ToString(v8::Local<v8::Context>) const'
V8_WARN_UNUSED_RESULT MaybeLocal<String> ToString(
^~~~~~~~
/home/volumio/.cache/node-gyp/14.15.4/include/node/v8.h:2810:44: note: candidate expects 1 argument, 0 provided
In file included from ../src/epoll.cc:15:
../../nan/nan.h:926: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 ../src/epoll.cc:11:
/home/volumio/.cache/node-gyp/14.15.4/include/node/v8.h:3037:7: note: candidate: 'int v8::String::WriteUtf8(v8::Isolate*, char*, int, int*, int) const'
int WriteUtf8(Isolate* isolate, char* buffer, int length = -1,
^~~~~~~~~
/home/volumio/.cache/node-gyp/14.15.4/include/node/v8.h:3037:7: note: no known conversion for argument 1 from 'char*' to 'v8::Isolate*'
In file included from ../src/epoll.cc:15:
../../nan/nan.h: In member function 'v8::Local<v8::Value> Nan::Callback::Call_(v8::Isolate*, v8::Local<v8::Object>, int, v8::Local<v8::Value>*) const':
../../nan/nan.h:1484:5: warning: 'v8::Local<v8::Value> node::MakeCallback(v8::Isolate*, v8::Local<v8::Object>, v8::Local<v8::Function>, int, v8::Local<v8::Value>*)' is deprecated: Use MakeCallback(..., async_context) [-Wdeprecated-declarations]
));
^
In file included from ../src/epoll.cc:12:
/home/volumio/.cache/node-gyp/14.15.4/include/node/node.h:191:50: note: declared here
NODE_EXTERN v8::Local<v8::Value> MakeCallback(
^~~~~~~~~~~~
/home/volumio/.cache/node-gyp/14.15.4/include/node/node.h:108:42: note: in definition of macro 'NODE_DEPRECATED'
__attribute__((deprecated(message))) declarator
^~~~~~~~~~
In file included from ../src/epoll.cc:15:
../../nan/nan.h:1484:5: warning: 'v8::Local<v8::Value> node::MakeCallback(v8::Isolate*, v8::Local<v8::Object>, v8::Local<v8::Function>, int, v8::Local<v8::Value>*)' is deprecated: Use MakeCallback(..., async_context) [-Wdeprecated-declarations]
));
^
In file included from ../src/epoll.cc:12:
/home/volumio/.cache/node-gyp/14.15.4/include/node/node.h:191:50: note: declared here
NODE_EXTERN v8::Local<v8::Value> MakeCallback(
^~~~~~~~~~~~
/home/volumio/.cache/node-gyp/14.15.4/include/node/node.h:108:42: note: in definition of macro 'NODE_DEPRECATED'
__attribute__((deprecated(message))) declarator
^~~~~~~~~~
In file included from ../src/epoll.cc:15:
../../nan/nan.h: In member function 'void Nan::AsyncWorker::SaveToPersistent(const char*, const v8::Local<v8::Value>&)':
../../nan/nan.h:1538:64: error: no matching function for call to 'v8::Object::Set(v8::Local<v8::String>, const v8::Local<v8::Value>&)'
New(persistentHandle)->Set(New(key).ToLocalChecked(), value);
^
In file included from ../src/epoll.cc:11:
/home/volumio/.cache/node-gyp/14.15.4/include/node/v8.h:3670:37: note: candidate: 'v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, v8::Local<v8::Value>, v8::Local<v8::Value>)'
V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context,
^~~
/home/volumio/.cache/node-gyp/14.15.4/include/node/v8.h:3670:37: note: candidate expects 3 arguments, 2 provided
/home/volumio/.cache/node-gyp/14.15.4/include/node/v8.h:3673:37: note: candidate: 'v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, uint32_t, v8::Local<v8::Value>)'
V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context, uint32_t index,
^~~
/home/volumio/.cache/node-gyp/14.15.4/include/node/v8.h:3673:37: note: candidate expects 3 arguments, 2 provided
In file included from ../src/epoll.cc:15:
../../nan/nan.h: In member function 'void Nan::AsyncWorker::SaveToPersistent(const v8::Local<v8::String>&, const v8::Local<v8::Value>&)':
../../nan/nan.h:1544:42: error: no matching function for call to 'v8::Object::Set(const v8::Local<v8::String>&, const v8::Local<v8::Value>&)'
New(persistentHandle)->Set(key, value);
^
In file included from ../src/epoll.cc:11:
/home/volumio/.cache/node-gyp/14.15.4/include/node/v8.h:3670:37: note: candidate: 'v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, v8::Local<v8::Value>, v8::Local<v8::Value>)'
V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context,
^~~
/home/volumio/.cache/node-gyp/14.15.4/include/node/v8.h:3670:37: note: candidate expects 3 arguments, 2 provided
/home/volumio/.cache/node-gyp/14.15.4/include/node/v8.h:3673:37: note: candidate: 'v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, uint32_t, v8::Local<v8::Value>)'
V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context, uint32_t index,
^~~
/home/volumio/.cache/node-gyp/14.15.4/include/node/v8.h:3673:37: note: candidate expects 3 arguments, 2 provided
In file included from ../src/epoll.cc:15:
../../nan/nan.h: In member function 'void Nan::AsyncWorker::SaveToPersistent(uint32_t, const v8::Local<v8::Value>&)':
../../nan/nan.h:1550:44: error: no matching function for call to 'v8::Object::Set(uint32_t&, const v8::Local<v8::Value>&)'
New(persistentHandle)->Set(index, value);
^
In file included from ../src/epoll.cc:11:
/home/volumio/.cache/node-gyp/14.15.4/include/node/v8.h:3670:37: note: candidate: 'v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, v8::Local<v8::Value>, v8::Local<v8::Value>)'
V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context,
^~~
/home/volumio/.cache/node-gyp/14.15.4/include/node/v8.h:3670:37: note: candidate expects 3 arguments, 2 provided
/home/volumio/.cache/node-gyp/14.15.4/include/node/v8.h:3673:37: note: candidate: 'v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, uint32_t, v8::Local<v8::Value>)'
V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context, uint32_t index,
^~~
/home/volumio/.cache/node-gyp/14.15.4/include/node/v8.h:3673:37: note: candidate expects 3 arguments, 2 provided
In file included from ../src/epoll.cc:15:
../../nan/nan.h: In member function 'v8::Local<v8::Value> Nan::AsyncWorker::GetFromPersistent(const char*) const':
../../nan/nan.h:1556:61: error: no matching function for call to 'v8::Object::Get(v8::Local<v8::String>)'
New(persistentHandle)->Get(New(key).ToLocalChecked()));
^
In file included from ../src/epoll.cc:11:
/home/volumio/.cache/node-gyp/14.15.4/include/node/v8.h:3717:43: note: candidate: 'v8::MaybeLocal<v8::Value> v8::Object::Get(v8::Local<v8::Context>, v8::Local<v8::Value>)'
V8_WARN_UNUSED_RESULT MaybeLocal<Value> Get(Local<Context> context,
^~~
/home/volumio/.cache/node-gyp/14.15.4/include/node/v8.h:3717:43: note: candidate expects 2 arguments, 1 provided
/home/volumio/.cache/node-gyp/14.15.4/include/node/v8.h:3720:43: note: candidate: 'v8::MaybeLocal<v8::Value> v8::Object::Get(v8::Local<v8::Context>, uint32_t)'
V8_WARN_UNUSED_RESULT MaybeLocal<Value> Get(Local<Context> context,
^~~
/home/volumio/.cache/node-gyp/14.15.4/include/node/v8.h:3720:43: note: candidate expects 2 arguments, 1 provided
In file included from ../src/epoll.cc:15:
../../nan/nan.h: In member function 'v8::Local<v8::Value> Nan::AsyncWorker::GetFromPersistent(const v8::Local<v8::String>&) const':
../../nan/nan.h:1562:55: error: no matching function for call to 'v8::Object::Get(const v8::Local<v8::String>&)'
return scope.Escape(New(persistentHandle)->Get(key));
^
In file included from ../src/epoll.cc:11:
/home/volumio/.cache/node-gyp/14.15.4/include/node/v8.h:3717:43: note: candidate: 'v8::MaybeLocal<v8::Value> v8::Object::Get(v8::Local<v8::Context>, v8::Local<v8::Value>)'
V8_WARN_UNUSED_RESULT MaybeLocal<Value> Get(Local<Context> context,
^~~
/home/volumio/.cache/node-gyp/14.15.4/include/node/v8.h:3717:43: note: candidate expects 2 arguments, 1 provided
/home/volumio/.cache/node-gyp/14.15.4/include/node/v8.h:3720:43: note: candidate: 'v8::MaybeLocal<v8::Value> v8::Object::Get(v8::Local<v8::Context>, uint32_t)'
V8_WARN_UNUSED_RESULT MaybeLocal<Value> Get(Local<Context> context,
^~~
/home/volumio/.cache/node-gyp/14.15.4/include/node/v8.h:3720:43: note: candidate expects 2 arguments, 1 provided
In file included from ../src/epoll.cc:15:
../../nan/nan.h: In member function 'v8::Local<v8::Value> Nan::AsyncWorker::GetFromPersistent(uint32_t) const':
../../nan/nan.h:1567:57: error: no matching function for call to 'v8::Object::Get(uint32_t&)'
return scope.Escape(New(persistentHandle)->Get(index));
^
In file included from ../src/epoll.cc:11:
/home/volumio/.cache/node-gyp/14.15.4/include/node/v8.h:3717:43: note: candidate: 'v8::MaybeLocal<v8::Value> v8::Object::Get(v8::Local<v8::Context>, v8::Local<v8::Value>)'
V8_WARN_UNUSED_RESULT MaybeLocal<Value> Get(Local<Context> context,
^~~
/home/volumio/.cache/node-gyp/14.15.4/include/node/v8.h:3717:43: note: candidate expects 2 arguments, 1 provided
/home/volumio/.cache/node-gyp/14.15.4/include/node/v8.h:3720:43: note: candidate: 'v8::MaybeLocal<v8::Value> v8::Object::Get(v8::Local<v8::Context>, uint32_t)'
V8_WARN_UNUSED_RESULT MaybeLocal<Value> Get(Local<Context> context,
^~~
/home/volumio/.cache/node-gyp/14.15.4/include/node/v8.h:3720:43: note: candidate expects 2 arguments, 1 provided
In file included from ../src/epoll.cc:15:
../../nan/nan.h: In function 'void Nan::AsyncQueueWorker(Nan::AsyncWorker*)':
../../nan/nan.h:1875: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]
, reinterpret_cast<uv_after_work_cb>(AsyncExecuteComplete)
^
In file included from /usr/include/c++/8/cassert:44,
from /home/volumio/.cache/node-gyp/14.15.4/include/node/node_object_wrap.h:26,
from ../src/epoll.cc:13:
../../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:2365,
from ../src/epoll.cc:15:
../../nan/nan_object_wrap.h: In member function 'void Nan::ObjectWrap::MakeWeak()':
../../nan/nan_object_wrap.h:67:18: error: 'class Nan::Persistent<v8::Object>' has no member named 'MarkIndependent'
persistent().MarkIndependent();
^~~~~~~~~~~~~~~
In file included from /usr/include/c++/8/cassert:44,
from /home/volumio/.cache/node-gyp/14.15.4/include/node/node_object_wrap.h:26,
from ../src/epoll.cc:13:
../../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());
^~~~~~~~~~~
../src/epoll.cc: In static member function 'static void Epoll::Init(Nan::ADDON_REGISTER_FUNCTION_ARGS_TYPE)':
../src/epoll.cc:175:39: error: no matching function for call to 'v8::FunctionTemplate::GetFunction()'
constructor.Reset(ctor->GetFunction());
^
In file included from ../src/epoll.cc:11:
/home/volumio/.cache/node-gyp/14.15.4/include/node/v8.h:6482:46: note: candidate: 'v8::MaybeLocal<v8::Function> v8::FunctionTemplate::GetFunction(v8::Local<v8::Context>)'
V8_WARN_UNUSED_RESULT MaybeLocal<Function> GetFunction(
^~~~~~~~~~~
/home/volumio/.cache/node-gyp/14.15.4/include/node/v8.h:6482:46: note: candidate expects 1 argument, 0 provided
../src/epoll.cc:177:23: error: no matching function for call to 'v8::FunctionTemplate::GetFunction()'
ctor->GetFunction());
^
In file included from ../src/epoll.cc:11:
/home/volumio/.cache/node-gyp/14.15.4/include/node/v8.h:6482:46: note: candidate: 'v8::MaybeLocal<v8::Function> v8::FunctionTemplate::GetFunction(v8::Local<v8::Context>)'
V8_WARN_UNUSED_RESULT MaybeLocal<Function> GetFunction(
^~~~~~~~~~~
/home/volumio/.cache/node-gyp/14.15.4/include/node/v8.h:6482:46: note: candidate expects 1 argument, 0 provided
../src/epoll.cc: In static member function 'static Nan::NAN_METHOD_RETURN_TYPE Epoll::Add(Nan::NAN_METHOD_ARGS_TYPE)':
../src/epoll.cc:210:44: error: no matching function for call to 'v8::Value::Int32Value()'
int err = epoll->Add(info[0]->Int32Value(), info[1]->Int32Value());
^
In file included from ../src/epoll.cc:11:
/home/volumio/.cache/node-gyp/14.15.4/include/node/v8.h:2869:40: note: candidate: 'v8::Maybe<int> v8::Value::Int32Value(v8::Local<v8::Context>) const'
V8_WARN_UNUSED_RESULT Maybe<int32_t> Int32Value(Local<Context> context) const;
^~~~~~~~~~
/home/volumio/.cache/node-gyp/14.15.4/include/node/v8.h:2869:40: note: candidate expects 1 argument, 0 provided
../src/epoll.cc:210:67: error: no matching function for call to 'v8::Value::Int32Value()'
int err = epoll->Add(info[0]->Int32Value(), info[1]->Int32Value());
^
In file included from ../src/epoll.cc:11:
/home/volumio/.cache/node-gyp/14.15.4/include/node/v8.h:2869:40: note: candidate: 'v8::Maybe<int> v8::Value::Int32Value(v8::Local<v8::Context>) const'
V8_WARN_UNUSED_RESULT Maybe<int32_t> Int32Value(Local<Context> context) const;
^~~~~~~~~~
/home/volumio/.cache/node-gyp/14.15.4/include/node/v8.h:2869:40: note: candidate expects 1 argument, 0 provided
../src/epoll.cc: In static member function 'static Nan::NAN_METHOD_RETURN_TYPE Epoll::Modify(Nan::NAN_METHOD_ARGS_TYPE)':
../src/epoll.cc:230:47: error: no matching function for call to 'v8::Value::Int32Value()'
int err = epoll->Modify(info[0]->Int32Value(), info[1]->Int32Value());
^
In file included from ../src/epoll.cc:11:
/home/volumio/.cache/node-gyp/14.15.4/include/node/v8.h:2869:40: note: candidate: 'v8::Maybe<int> v8::Value::Int32Value(v8::Local<v8::Context>) const'
V8_WARN_UNUSED_RESULT Maybe<int32_t> Int32Value(Local<Context> context) const;
^~~~~~~~~~
/home/volumio/.cache/node-gyp/14.15.4/include/node/v8.h:2869:40: note: candidate expects 1 argument, 0 provided
../src/epoll.cc:230:70: error: no matching function for call to 'v8::Value::Int32Value()'
int err = epoll->Modify(info[0]->Int32Value(), info[1]->Int32Value());
^
In file included from ../src/epoll.cc:11:
/home/volumio/.cache/node-gyp/14.15.4/include/node/v8.h:2869:40: note: candidate: 'v8::Maybe<int> v8::Value::Int32Value(v8::Local<v8::Context>) const'
V8_WARN_UNUSED_RESULT Maybe<int32_t> Int32Value(Local<Context> context) const;
^~~~~~~~~~
/home/volumio/.cache/node-gyp/14.15.4/include/node/v8.h:2869:40: note: candidate expects 1 argument, 0 provided
../src/epoll.cc: In static member function 'static Nan::NAN_METHOD_RETURN_TYPE Epoll::Remove(Nan::NAN_METHOD_ARGS_TYPE)':
../src/epoll.cc:247:47: error: no matching function for call to 'v8::Value::Int32Value()'
int err = epoll->Remove(info[0]->Int32Value());
^
In file included from ../src/epoll.cc:11:
/home/volumio/.cache/node-gyp/14.15.4/include/node/v8.h:2869:40: note: candidate: 'v8::Maybe<int> v8::Value::Int32Value(v8::Local<v8::Context>) const'
V8_WARN_UNUSED_RESULT Maybe<int32_t> Int32Value(Local<Context> context) const;
^~~~~~~~~~
/home/volumio/.cache/node-gyp/14.15.4/include/node/v8.h:2869:40: note: candidate expects 1 argument, 0 provided
In file included from ../src/epoll.cc:12:
../src/epoll.cc: At global scope:
/home/volumio/.cache/node-gyp/14.15.4/include/node/node.h:758: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]
(node::addon_register_func) (regfunc), \
^
/home/volumio/.cache/node-gyp/14.15.4/include/node/node.h:792:3: note: in expansion of macro 'NODE_MODULE_X'
NODE_MODULE_X(modname, regfunc, NULL, 0) // NOLINT (readability/null_usage)
^~~~~~~~~~~~~
../src/epoll.cc:381:1: note: in expansion of macro 'NODE_MODULE'
NODE_MODULE(epoll, Epoll::Init)
^~~~~~~~~~~
In file included from ../src/epoll.cc:11:
/home/volumio/.cache/node-gyp/14.15.4/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/volumio/.cache/node-gyp/14.15.4/include/node/node_object_wrap.h:85:78: required from here
/home/volumio/.cache/node-gyp/14.15.4/include/node/v8.h:10874: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]
reinterpret_cast<Callback>(callback), type);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/volumio/.cache/node-gyp/14.15.4/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/volumio/.cache/node-gyp/14.15.4/include/node/v8.h:10874: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]
make: *** [epoll.target.mk:111: Release/obj.target/epoll/src/epoll.o] Error 1
make: Leaving directory '/data/plugins/system_controller/gpio_control/node_modules/epoll/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/npm/node_modules/node-gyp/lib/build.js:194:23)
gyp ERR! stack at ChildProcess.emit (events.js:315:20)
gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:277:12)
gyp ERR! System Linux 5.10.90-v7+
gyp ERR! command "/usr/bin/node" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /data/plugins/system_controller/gpio_control/node_modules/epoll
gyp ERR! node -v v14.15.4
gyp ERR! node-gyp -v v5.1.0
gyp ERR! not ok
npm WARN gpio_control@0.0.1 No repository field.
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! epoll@1.0.2 install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the epoll@1.0.2 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/volumio/.npm/_logs/2022-01-28T15_30_47_898Z-debug.log
And
2022-01-28T15_30_47_898Z-debug.log
0 info it worked if it ends with ok
1 verbose cli [
1 verbose cli '/usr/bin/node',
1 verbose cli '/usr/bin/npm',
1 verbose cli 'install',
1 verbose cli '--prefix',
1 verbose cli '/data/plugins/system_controller/gpio_control',
1 verbose cli 'onoff@^1.1.1'
1 verbose cli ]
2 info using npm@6.14.10
3 info using node@v14.15.4
4 verbose npm-session c834e1ada0a2c31f
5 silly install loadCurrentTree
6 silly install readLocalPackageData
7 http fetch GET 304 https://registry.npmjs.org/onoff 1200ms (from cache)
8 silly pacote range manifest for onoff@^1.1.1 fetched in 1268ms
9 timing stage:loadCurrentTree Completed in 2271ms
10 silly install loadIdealTree
11 silly install cloneCurrentTreeToIdealTree
12 timing stage:loadIdealTree:cloneCurrentTree Completed in 9ms
13 silly install loadShrinkwrap
14 timing stage:loadIdealTree:loadShrinkwrap Completed in 186ms
15 silly install loadAllDepsIntoIdealTree
16 silly resolveWithNewModule onoff@1.2.0 checking installable status
17 http fetch GET 304 https://registry.npmjs.org/epoll 790ms (from cache)
18 silly pacote range manifest for epoll@~1.0.2 fetched in 805ms
19 silly resolveWithNewModule epoll@1.0.2 checking installable status
20 http fetch GET 304 https://registry.npmjs.org/nan 129ms (from cache)
21 silly pacote range manifest for nan@~2.8.0 fetched in 156ms
22 silly resolveWithNewModule nan@2.8.0 checking installable status
23 http fetch GET 304 https://registry.npmjs.org/bindings 187ms (from cache)
24 silly pacote range manifest for bindings@~1.3.0 fetched in 201ms
25 silly resolveWithNewModule bindings@1.3.1 checking installable status
26 timing stage:loadIdealTree:loadAllDepsIntoIdealTree Completed in 1479ms
27 timing stage:loadIdealTree Completed in 1819ms
28 silly currentTree gpio_control@0.0.1
28 silly currentTree +-- after@0.8.2
28 silly currentTree +-- arraybuffer.slice@0.0.6
28 silly currentTree +-- backo2@1.0.2
28 silly currentTree +-- balanced-match@1.0.2
28 silly currentTree +-- base64-arraybuffer@0.1.5
28 silly currentTree +-- better-assert@1.0.2
28 silly currentTree +-- blob@0.0.4
28 silly currentTree +-- brace-expansion@1.1.11
28 silly currentTree +-- callsite@1.0.0
28 silly currentTree +-- child_process@1.0.2
28 silly currentTree +-- component-bind@1.0.0
28 silly currentTree +-- component-emitter@1.2.1
28 silly currentTree +-- component-inherit@0.0.3
28 silly currentTree +-- concat-map@0.0.1
28 silly currentTree +-- debug@2.3.3
28 silly currentTree +-- engine.io-client@1.8.6
28 silly currentTree +-- engine.io-parser@1.3.2
28 silly currentTree +-- fs-extra@0.28.0
28 silly currentTree +-- fs.realpath@1.0.0
28 silly currentTree +-- glob@7.2.0
28 silly currentTree +-- graceful-fs@4.2.9
28 silly currentTree +-- has-binary@0.1.7
28 silly currentTree +-- has-cors@1.1.0
28 silly currentTree +-- imurmurhash@0.1.4
28 silly currentTree +-- indexof@0.0.1
28 silly currentTree +-- inflight@1.0.6
28 silly currentTree +-- inherits@2.0.4
28 silly currentTree +-- isarray@0.0.1
28 silly currentTree +-- json3@3.3.2
28 silly currentTree +-- jsonfile@2.4.0
28 silly currentTree +-- kew@0.7.0
28 silly currentTree +-- klaw@1.3.1
28 silly currentTree +-- minimatch@3.0.4
28 silly currentTree +-- ms@0.7.2
28 silly currentTree +-- multimap@1.0.1
28 silly currentTree +-- object-component@0.0.3
28 silly currentTree +-- once@1.4.0
28 silly currentTree +-- options@0.0.6
28 silly currentTree +-- parsejson@0.0.3
28 silly currentTree +-- parseqs@0.0.5
28 silly currentTree +-- parseuri@0.0.5
28 silly currentTree +-- path-is-absolute@1.0.1
28 silly currentTree +-- rimraf@2.7.1
28 silly currentTree +-- sleep@5.2.4
28 silly currentTree | `-- nan@2.15.0
28 silly currentTree +-- slide@1.1.6
28 silly currentTree +-- socket.io-client@1.7.4
28 silly currentTree +-- socket.io-parser@2.3.1
28 silly currentTree | +-- component-emitter@1.1.2
28 silly currentTree | +-- debug@2.2.0
28 silly currentTree | `-- ms@0.7.1
28 silly currentTree +-- to-array@0.1.4
28 silly currentTree +-- ultron@1.0.2
28 silly currentTree +-- universalify@0.1.2
28 silly currentTree +-- v-conf@1.4.3
28 silly currentTree | +-- fs-extra@3.0.1
28 silly currentTree | `-- jsonfile@3.0.1
28 silly currentTree +-- wrappy@1.0.2
28 silly currentTree +-- write-file-atomic@1.3.1
28 silly currentTree +-- ws@1.1.5
28 silly currentTree +-- wtf-8@1.0.0
28 silly currentTree +-- xmlhttprequest-ssl@1.6.3
28 silly currentTree `-- yeast@0.1.2
29 silly idealTree gpio_control@0.0.1
29 silly idealTree +-- after@0.8.2
29 silly idealTree +-- arraybuffer.slice@0.0.6
29 silly idealTree +-- backo2@1.0.2
29 silly idealTree +-- balanced-match@1.0.2
29 silly idealTree +-- base64-arraybuffer@0.1.5
29 silly idealTree +-- better-assert@1.0.2
29 silly idealTree +-- bindings@1.3.1
29 silly idealTree +-- blob@0.0.4
29 silly idealTree +-- brace-expansion@1.1.11
29 silly idealTree +-- callsite@1.0.0
29 silly idealTree +-- child_process@1.0.2
29 silly idealTree +-- component-bind@1.0.0
29 silly idealTree +-- component-emitter@1.2.1
29 silly idealTree +-- component-inherit@0.0.3
29 silly idealTree +-- concat-map@0.0.1
29 silly idealTree +-- debug@2.3.3
29 silly idealTree +-- engine.io-client@1.8.6
29 silly idealTree +-- engine.io-parser@1.3.2
29 silly idealTree +-- epoll@1.0.2
29 silly idealTree +-- fs-extra@0.28.0
29 silly idealTree +-- fs.realpath@1.0.0
29 silly idealTree +-- glob@7.2.0
29 silly idealTree +-- graceful-fs@4.2.9
29 silly idealTree +-- has-binary@0.1.7
29 silly idealTree +-- has-cors@1.1.0
29 silly idealTree +-- imurmurhash@0.1.4
29 silly idealTree +-- indexof@0.0.1
29 silly idealTree +-- inflight@1.0.6
29 silly idealTree +-- inherits@2.0.4
29 silly idealTree +-- isarray@0.0.1
29 silly idealTree +-- json3@3.3.2
29 silly idealTree +-- jsonfile@2.4.0
29 silly idealTree +-- kew@0.7.0
29 silly idealTree +-- klaw@1.3.1
29 silly idealTree +-- minimatch@3.0.4
29 silly idealTree +-- ms@0.7.2
29 silly idealTree +-- multimap@1.0.1
29 silly idealTree +-- nan@2.8.0
29 silly idealTree +-- object-component@0.0.3
29 silly idealTree +-- once@1.4.0
29 silly idealTree +-- onoff@1.2.0
29 silly idealTree +-- options@0.0.6
29 silly idealTree +-- parsejson@0.0.3
29 silly idealTree +-- parseqs@0.0.5
29 silly idealTree +-- parseuri@0.0.5
29 silly idealTree +-- path-is-absolute@1.0.1
29 silly idealTree +-- rimraf@2.7.1
29 silly idealTree +-- sleep@5.2.4
29 silly idealTree | `-- nan@2.15.0
29 silly idealTree +-- slide@1.1.6
29 silly idealTree +-- socket.io-client@1.7.4
29 silly idealTree +-- socket.io-parser@2.3.1
29 silly idealTree | +-- component-emitter@1.1.2
29 silly idealTree | +-- debug@2.2.0
29 silly idealTree | `-- ms@0.7.1
29 silly idealTree +-- to-array@0.1.4
29 silly idealTree +-- ultron@1.0.2
29 silly idealTree +-- universalify@0.1.2
29 silly idealTree +-- v-conf@1.4.3
29 silly idealTree | +-- fs-extra@3.0.1
29 silly idealTree | `-- jsonfile@3.0.1
29 silly idealTree +-- wrappy@1.0.2
29 silly idealTree +-- write-file-atomic@1.3.1
29 silly idealTree +-- ws@1.1.5
29 silly idealTree +-- wtf-8@1.0.0
29 silly idealTree +-- xmlhttprequest-ssl@1.6.3
29 silly idealTree `-- yeast@0.1.2
30 silly install generateActionsToTake
31 timing stage:generateActionsToTake Completed in 44ms
32 silly diffTrees action count 4
33 silly diffTrees add bindings@1.3.1
34 silly diffTrees add nan@2.8.0
35 silly diffTrees add epoll@1.0.2
36 silly diffTrees add onoff@1.2.0
37 silly decomposeActions action count 32
38 silly decomposeActions fetch bindings@1.3.1
39 silly decomposeActions extract bindings@1.3.1
40 silly decomposeActions preinstall bindings@1.3.1
41 silly decomposeActions build bindings@1.3.1
42 silly decomposeActions install bindings@1.3.1
43 silly decomposeActions postinstall bindings@1.3.1
44 silly decomposeActions finalize bindings@1.3.1
45 silly decomposeActions refresh-package-json bindings@1.3.1
46 silly decomposeActions fetch nan@2.8.0
47 silly decomposeActions extract nan@2.8.0
48 silly decomposeActions preinstall nan@2.8.0
49 silly decomposeActions build nan@2.8.0
50 silly decomposeActions install nan@2.8.0
51 silly decomposeActions postinstall nan@2.8.0
52 silly decomposeActions finalize nan@2.8.0
53 silly decomposeActions refresh-package-json nan@2.8.0
54 silly decomposeActions fetch epoll@1.0.2
55 silly decomposeActions extract epoll@1.0.2
56 silly decomposeActions preinstall epoll@1.0.2
57 silly decomposeActions build epoll@1.0.2
58 silly decomposeActions install epoll@1.0.2
59 silly decomposeActions postinstall epoll@1.0.2
60 silly decomposeActions finalize epoll@1.0.2
61 silly decomposeActions refresh-package-json epoll@1.0.2
62 silly decomposeActions fetch onoff@1.2.0
63 silly decomposeActions extract onoff@1.2.0
64 silly decomposeActions preinstall onoff@1.2.0
65 silly decomposeActions build onoff@1.2.0
66 silly decomposeActions install onoff@1.2.0
67 silly decomposeActions postinstall onoff@1.2.0
68 silly decomposeActions finalize onoff@1.2.0
69 silly decomposeActions refresh-package-json onoff@1.2.0
70 silly install executeActions
71 silly doSerial global-install 32
72 verbose correctMkdir /home/volumio/.npm/_locks correctMkdir not in flight; initializing
73 verbose lock using /home/volumio/.npm/_locks/staging-09e82038d0f733ea.lock for /data/plugins/system_controller/gpio_control/node_modules/.staging
74 silly doParallel extract 4
75 silly extract bindings@1.3.1
76 silly extract nan@2.8.0
77 silly extract epoll@1.0.2
78 silly extract onoff@1.2.0
79 silly tarball trying bindings@~1.3.0 by hash: sha512-i47mqjF9UbjxJhxGf+pZ6kSxrnI3wBLlnGI2ArWJ4r0VrvDS7ZYXkprq/pLaBWYq4GM0r4zdHY+NNRqEMU7uew==
80 silly tarball trying nan@~2.8.0 by hash: sha1-7XFfP+neArV6XmJS2QqWZ14fCFo=
81 silly tarball trying epoll@~1.0.2 by hash: sha512-3t2crZPej4v60YYvXE/pgJ62D4RZBd/UsEXsHd+H3xtDre0vO8aV9O+0ThIPlfZtHJ4vMPhz55fYK1j37rX9Ng==
82 silly tarball trying onoff@^1.1.1 by hash: sha512-o41qBIIs6agXRjryGBIJpq1xour69VDBfROf3IX+wiwutIowPZDcjTRCqFo+HYleiQngO1wfNqHWpjm0l0oYwQ==
83 timing audit submit Completed in 302ms
84 silly extract bindings@~1.3.0 extracted to /data/plugins/system_controller/gpio_control/node_modules/.staging/bindings-e641f0a9 (252ms)
85 http fetch POST 200 https://registry.npmjs.org/-/npm/v1/security/audits/quick 303ms
86 timing audit body Completed in 8ms
87 silly extract epoll@~1.0.2 extracted to /data/plugins/system_controller/gpio_control/node_modules/.staging/epoll-cd31b40b (349ms)
88 silly extract onoff@^1.1.1 extracted to /data/plugins/system_controller/gpio_control/node_modules/.staging/onoff-ea79436a (366ms)
89 silly extract nan@~2.8.0 extracted to /data/plugins/system_controller/gpio_control/node_modules/.staging/nan-8e935b41 (393ms)
90 timing action:extract Completed in 406ms
91 silly doReverseSerial unbuild 32
92 silly doSerial remove 32
93 silly doSerial move 32
94 silly doSerial finalize 32
95 silly finalize /data/plugins/system_controller/gpio_control/node_modules/bindings
96 silly finalize /data/plugins/system_controller/gpio_control/node_modules/nan
97 silly finalize /data/plugins/system_controller/gpio_control/node_modules/epoll
98 silly finalize /data/plugins/system_controller/gpio_control/node_modules/onoff
99 timing action:finalize Completed in 31ms
100 silly doParallel refresh-package-json 4
101 silly refresh-package-json /data/plugins/system_controller/gpio_control/node_modules/bindings
102 silly refresh-package-json /data/plugins/system_controller/gpio_control/node_modules/nan
103 silly refresh-package-json /data/plugins/system_controller/gpio_control/node_modules/epoll
104 silly refresh-package-json /data/plugins/system_controller/gpio_control/node_modules/onoff
105 timing action:refresh-package-json Completed in 66ms
106 silly doParallel preinstall 4
107 silly preinstall bindings@1.3.1
108 info lifecycle bindings@1.3.1~preinstall: bindings@1.3.1
109 silly preinstall nan@2.8.0
110 info lifecycle nan@2.8.0~preinstall: nan@2.8.0
111 silly preinstall epoll@1.0.2
112 info lifecycle epoll@1.0.2~preinstall: epoll@1.0.2
113 silly preinstall onoff@1.2.0
114 info lifecycle onoff@1.2.0~preinstall: onoff@1.2.0
115 timing action:preinstall Completed in 8ms
116 silly doSerial build 32
117 silly build bindings@1.3.1
118 info linkStuff bindings@1.3.1
119 silly linkStuff bindings@1.3.1 has /data/plugins/system_controller/gpio_control/node_modules as its parent node_modules
120 silly build nan@2.8.0
121 info linkStuff nan@2.8.0
122 silly linkStuff nan@2.8.0 has /data/plugins/system_controller/gpio_control/node_modules as its parent node_modules
123 silly build epoll@1.0.2
124 info linkStuff epoll@1.0.2
125 silly linkStuff epoll@1.0.2 has /data/plugins/system_controller/gpio_control/node_modules as its parent node_modules
126 silly build onoff@1.2.0
127 info linkStuff onoff@1.2.0
128 silly linkStuff onoff@1.2.0 has /data/plugins/system_controller/gpio_control/node_modules as its parent node_modules
129 timing action:build Completed in 9ms
130 silly doSerial global-link 32
131 silly doParallel update-linked 0
132 silly doSerial install 32
133 silly install bindings@1.3.1
134 info lifecycle bindings@1.3.1~install: bindings@1.3.1
135 silly install nan@2.8.0
136 info lifecycle nan@2.8.0~install: nan@2.8.0
137 silly install epoll@1.0.2
138 info lifecycle epoll@1.0.2~install: epoll@1.0.2
139 verbose lifecycle epoll@1.0.2~install: unsafe-perm in lifecycle true
140 verbose lifecycle epoll@1.0.2~install: PATH: /usr/lib/node_modules/npm/node_modules/npm-lifecycle/node-gyp-bin:/data/plugins/system_controller/gpio_control/node_modules/epoll/node_modules/.bin:/data/plugins/system_controller/gpio_control/node_modules/.bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games
141 verbose lifecycle epoll@1.0.2~install: CWD: /data/plugins/system_controller/gpio_control/node_modules/epoll
142 silly lifecycle epoll@1.0.2~install: Args: [ '-c', 'node-gyp rebuild' ]
143 silly lifecycle epoll@1.0.2~install: Returned: code: 1 signal: null
144 info lifecycle epoll@1.0.2~install: Failed to exec install script
145 timing action:install Completed in 8331ms
146 verbose unlock done using /home/volumio/.npm/_locks/staging-09e82038d0f733ea.lock for /data/plugins/system_controller/gpio_control/node_modules/.staging
147 timing stage:rollbackFailedOptional Completed in 141ms
148 timing stage:runTopLevelLifecycles Completed in 13397ms
149 silly saveTree gpio_control@0.0.1
149 silly saveTree +-- child_process@1.0.2
149 silly saveTree +-- fs-extra@0.28.0
149 silly saveTree | +-- graceful-fs@4.2.9
149 silly saveTree | +-- jsonfile@2.4.0
149 silly saveTree | +-- klaw@1.3.1
149 silly saveTree | +-- path-is-absolute@1.0.1
149 silly saveTree | `-- rimraf@2.7.1
149 silly saveTree | `-- glob@7.2.0
149 silly saveTree | +-- fs.realpath@1.0.0
149 silly saveTree | +-- inflight@1.0.6
149 silly saveTree | | +-- once@1.4.0
149 silly saveTree | | | `-- wrappy@1.0.2
149 silly saveTree | | `-- wrappy@1.0.2
149 silly saveTree | +-- inherits@2.0.4
149 silly saveTree | +-- minimatch@3.0.4
149 silly saveTree | | `-- brace-expansion@1.1.11
149 silly saveTree | | +-- balanced-match@1.0.2
149 silly saveTree | | `-- concat-map@0.0.1
149 silly saveTree | `-- once@1.4.0
149 silly saveTree +-- kew@0.7.0
149 silly saveTree +-- onoff@1.2.0
149 silly saveTree | `-- epoll@1.0.2
149 silly saveTree | +-- bindings@1.3.1
149 silly saveTree | `-- nan@2.8.0
149 silly saveTree +-- sleep@5.2.4
149 silly saveTree | `-- nan@2.15.0
149 silly saveTree +-- socket.io-client@1.7.4
149 silly saveTree | +-- backo2@1.0.2
149 silly saveTree | +-- component-bind@1.0.0
149 silly saveTree | +-- component-emitter@1.2.1
149 silly saveTree | +-- debug@2.3.3
149 silly saveTree | | `-- ms@0.7.2
149 silly saveTree | +-- engine.io-client@1.8.6
149 silly saveTree | | +-- component-inherit@0.0.3
149 silly saveTree | | +-- engine.io-parser@1.3.2
149 silly saveTree | | | +-- after@0.8.2
149 silly saveTree | | | +-- arraybuffer.slice@0.0.6
149 silly saveTree | | | +-- base64-arraybuffer@0.1.5
149 silly saveTree | | | +-- blob@0.0.4
149 silly saveTree | | | +-- has-binary@0.1.7
149 silly saveTree | | | | `-- isarray@0.0.1
149 silly saveTree | | | `-- wtf-8@1.0.0
149 silly saveTree | | +-- has-cors@1.1.0
149 silly saveTree | | +-- indexof@0.0.1
149 silly saveTree | | +-- parsejson@0.0.3
149 silly saveTree | | | `-- better-assert@1.0.2
149 silly saveTree | | | `-- callsite@1.0.0
149 silly saveTree | | +-- parseqs@0.0.5
149 silly saveTree | | +-- parseuri@0.0.5
149 silly saveTree | | +-- ws@1.1.5
149 silly saveTree | | | +-- options@0.0.6
149 silly saveTree | | | `-- ultron@1.0.2
149 silly saveTree | | +-- xmlhttprequest-ssl@1.6.3
149 silly saveTree | | `-- yeast@0.1.2
149 silly saveTree | +-- has-binary@0.1.7
149 silly saveTree | +-- indexof@0.0.1
149 silly saveTree | +-- object-component@0.0.3
149 silly saveTree | +-- parseuri@0.0.5
149 silly saveTree | +-- socket.io-parser@2.3.1
149 silly saveTree | | +-- component-emitter@1.1.2
149 silly saveTree | | +-- debug@2.2.0
149 silly saveTree | | | `-- ms@0.7.1
149 silly saveTree | | `-- json3@3.3.2
149 silly saveTree | `-- to-array@0.1.4
149 silly saveTree `-- v-conf@1.4.3
149 silly saveTree +-- fs-extra@3.0.1
149 silly saveTree | +-- jsonfile@3.0.1
149 silly saveTree | `-- universalify@0.1.2
149 silly saveTree +-- multimap@1.0.1
149 silly saveTree `-- write-file-atomic@1.3.1
149 silly saveTree +-- imurmurhash@0.1.4
149 silly saveTree `-- slide@1.1.6
150 warn gpio_control@0.0.1 No repository field.
151 verbose stack Error: epoll@1.0.2 install: `node-gyp rebuild`
151 verbose stack Exit status 1
151 verbose stack at EventEmitter.<anonymous> (/usr/lib/node_modules/npm/node_modules/npm-lifecycle/index.js:332:16)
151 verbose stack at EventEmitter.emit (events.js:315:20)
151 verbose stack at ChildProcess.<anonymous> (/usr/lib/node_modules/npm/node_modules/npm-lifecycle/lib/spawn.js:55:14)
151 verbose stack at ChildProcess.emit (events.js:315:20)
151 verbose stack at maybeClose (internal/child_process.js:1048:16)
151 verbose stack at Process.ChildProcess._handle.onexit (internal/child_process.js:288:5)
152 verbose pkgid epoll@1.0.2
153 verbose cwd /home/volumio
154 verbose Linux 5.10.90-v7+
155 verbose argv "/usr/bin/node" "/usr/bin/npm" "install" "--prefix" "/data/plugins/system_controller/gpio_control" "onoff@^1.1.1"
156 verbose node v14.15.4
157 verbose npm v6.14.10
158 error code ELIFECYCLE
159 error errno 1
160 error epoll@1.0.2 install: `node-gyp rebuild`
160 error Exit status 1
161 error Failed at the epoll@1.0.2 install script.
161 error This is probably not a problem with npm. There is likely additional logging output above.
162 verbose exit [ 1, true ]