"Orange Pi Zero" how to manage pins?

I have an "Orange Pi Zero" and "Node-red" installed on it.
and I don't understand how to manage pins with Node-red. I searched on forum but, the answers are mainly for "Raspberry" not for "Orange Pi". Or is it for "Node-red" the same thing? Ideally, it would be if there would be a link to an example enabling/disabling a pin/led.

AFAIK, there isn't a simple working solution for controlling the pins on an Orange Pi using Node-RED :frowning:

Thanks for the answer!
Then maybe with the help of python? Python will manages of pins and Node-red will tracks changes?

Yes - If you can find a working Orange Pi version of the Raspberry Pi RPi.GPIO library, then it could be possible to hack your Node-RED to use it

I don't think that I can hack Raspberry Pi RPi.GPIO library. Maybe someone has a positive experience in this, please help!
I will glad any possible ways to control pins of Orange Pi by Node-red.

Yes, you could use Python called via an exec node to do it, or possibly better communicate with the python via mqtt.

1 Like

I have not used an OPi Zero but I am running two OPi Ones running Armbian and when I first started playing with them I used this node set and it worked for me:

I have them embedded now and am not using the GPIO functionality on either one at this time so I don't know if recent updates may have broken anything there but I would recommend giving that a try.

2 Likes

This is the first thing that I have undertaken, but it is not installable. I think because problems with old libraries or, i have no idea!

The log

-----------------------------------------------------------
2020-10-07T11:50:09.655Z Install : node-red-contrib-python3-function 0.0.4

2020-10-07T11:50:09.844Z npm install --no-audit --no-update-notifier --no-fund --save --save-prefix="~" --production node-red-contrib-python3-function@0.0.4
2020-10-07T11:50:25.713Z [out] + node-red-contrib-python3-function@0.0.4
2020-10-07T11:50:25.713Z [out] added 1 package from 2 contributors in 9.049s
2020-10-07T11:50:25.783Z rc=0

-----------------------------------------------------------
2020-10-07T12:09:46.615Z Install : node-red-contrib-opi-gpio 0.0.5

2020-10-07T12:09:46.657Z npm install --no-audit --no-update-notifier --no-fund --save --save-prefix="~" --production node-red-contrib-opi-gpio@0.0.5
2020-10-07T12:10:02.440Z [out] 
2020-10-07T12:10:02.440Z [out] > epoll@1.0.2 install /home/zerg/.node-red/node_modules/epoll
2020-10-07T12:10:02.440Z [out] > node-gyp rebuild
2020-10-07T12:10:02.440Z [out] 
2020-10-07T12:10:07.833Z [out] make: Entering directory '/home/zerg/.node-red/node_modules/epoll/build'
2020-10-07T12:10:07.845Z [out]   CXX(target) Release/obj.target/epoll/src/epoll.o
2020-10-07T12:10:13.324Z [err] In file included from ../../nan/nan_converters.h:67:0,
2020-10-07T12:10:13.324Z [err]                  from ../../nan/nan.h:202,
2020-10-07T12:10:13.324Z [err]                  from ../src/epoll.cc:15:
2020-10-07T12:10:13.324Z [err] ../../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>)’:
2020-10-07T12:10:13.324Z [err] ../../nan/nan_converters_43_inl.h:18:69: warning: ‘v8::MaybeLocal<v8::Boolean> v8::Value::ToBoolean(v8::Local<v8::Context>) const’ is deprecated: ToBoolean can never throw. Use Local version. [-Wdeprecated-declarations]
2020-10-07T12:10:13.324Z [err]        val->To ## TYPE(v8::Isolate::GetCurrent()->GetCurrentContext())          \
2020-10-07T12:10:13.324Z [err]                                                                      ^
2020-10-07T12:10:13.324Z [err] ../../nan/nan_converters_43_inl.h:22:1: note: in expansion of macro ‘X’
2020-10-07T12:10:13.324Z [err]  X(Boolean)
2020-10-07T12:10:13.324Z [err]  ^
2020-10-07T12:10:13.326Z [err] In file included from /home/zerg/.cache/node-gyp/12.18.4/include/node/v8-internal.h:14:0,
2020-10-07T12:10:13.326Z [err]                  from /home/zerg/.cache/node-gyp/12.18.4/include/node/v8.h:27,
2020-10-07T12:10:13.326Z [err]                  from ../src/epoll.cc:11:
2020-10-07T12:10:13.326Z [err] /home/zerg/.cache/node-gyp/12.18.4/include/node/v8.h:2664:59: note: declared here
2020-10-07T12:10:13.326Z [err]                  V8_WARN_UNUSED_RESULT MaybeLocal<Boolean> ToBoolean(
2020-10-07T12:10:13.326Z [err]                                                            ^
2020-10-07T12:10:13.326Z [err] /home/zerg/.cache/node-gyp/12.18.4/include/node/v8config.h:328:3: note: in definition of macro ‘V8_DEPRECATED’
2020-10-07T12:10:13.326Z [err]    declarator __attribute__((deprecated(message)))
2020-10-07T12:10:13.326Z [err]    ^~~~~~~~~~
2020-10-07T12:10:13.352Z [err] In file included from ../../nan/nan_converters.h:67:0,
2020-10-07T12:10:13.352Z [err]                  from ../../nan/nan.h:202,
2020-10-07T12:10:13.352Z [err]                  from ../src/epoll.cc:15:
2020-10-07T12:10:13.352Z [err] ../../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>)’:
2020-10-07T12:10:13.352Z [err] ../../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]
2020-10-07T12:10:13.352Z [err]    return val->NAME ## Value(isolate->GetCurrentContext());                     \
2020-10-07T12:10:13.352Z [err]                                                          ^
2020-10-07T12:10:13.352Z [err] ../../nan/nan_converters_43_inl.h:40:1: note: in expansion of macro ‘X’
2020-10-07T12:10:13.352Z [err]  X(bool, Boolean)
2020-10-07T12:10:13.352Z [err]  ^
2020-10-07T12:10:13.354Z [err] In file included from /home/zerg/.cache/node-gyp/12.18.4/include/node/v8-internal.h:14:0,
2020-10-07T12:10:13.354Z [err]                  from /home/zerg/.cache/node-gyp/12.18.4/include/node/v8.h:27,
2020-10-07T12:10:13.354Z [err]                  from ../src/epoll.cc:11:
2020-10-07T12:10:13.354Z [err] /home/zerg/.cache/node-gyp/12.18.4/include/node/v8.h:2702:51: note: declared here
2020-10-07T12:10:13.354Z [err]                  V8_WARN_UNUSED_RESULT Maybe<bool> BooleanValue(
2020-10-07T12:10:13.354Z [err]                                                    ^
2020-10-07T12:10:13.354Z [err] /home/zerg/.cache/node-gyp/12.18.4/include/node/v8config.h:328:3: note: in definition of macro ‘V8_DEPRECATED’
2020-10-07T12:10:13.354Z [err]    declarator __attribute__((deprecated(message)))
2020-10-07T12:10:13.354Z [err]    ^~~~~~~~~~
2020-10-07T12:10:13.399Z [err] In file included from ../../nan/nan_new.h:189:0,
2020-10-07T12:10:13.399Z [err]                  from ../../nan/nan.h:203,
2020-10-07T12:10:13.399Z [err]                  from ../src/epoll.cc:15:
2020-10-07T12:10:13.399Z [err] ../../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>)’:
2020-10-07T12:10:13.399Z [err] ../../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>&)’
2020-10-07T12:10:13.399Z [err]                            , obj));
2020-10-07T12:10:13.399Z [err]                                 ^
2020-10-07T12:10:13.400Z [err] In file included from ../src/epoll.cc:11:0:
2020-10-07T12:10:13.400Z [err] /home/zerg/.cache/node-gyp/12.18.4/include/node/v8.h:4275: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)
2020-10-07T12:10:13.400Z [err]    static MaybeLocal<Function> New(
2020-10-07T12:10:13.400Z [err]                                ^~~
2020-10-07T12:10:13.400Z [err] /home/zerg/.cache/node-gyp/12.18.4/include/node/v8.h:4275:31: note:   no known conversion for argument 1 from ‘v8::Isolate*’ to ‘v8::Local<v8::Context>’
2020-10-07T12:10:13.443Z [err] In file included from ../../nan/nan_new.h:189:0,
2020-10-07T12:10:13.443Z [err]                  from ../../nan/nan.h:203,
2020-10-07T12:10:13.443Z [err]                  from ../src/epoll.cc:15:
2020-10-07T12:10:13.443Z [err] ../../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>)’:
2020-10-07T12:10:13.443Z [err] ../../nan/nan_implementation_12_inl.h:337:37: error: no matching function for call to ‘v8::StringObject::New(v8::Local<v8::String>&)’
2020-10-07T12:10:13.443Z [err]    return v8::StringObject::New(value).As<v8::StringObject>();
2020-10-07T12:10:13.443Z [err]                                      ^
2020-10-07T12:10:13.444Z [err] In file included from ../src/epoll.cc:11:0:
2020-10-07T12:10:13.444Z [err] /home/zerg/.cache/node-gyp/12.18.4/include/node/v8.h:5531:23: note: candidate: static v8::Local<v8::Value> v8::StringObject::New(v8::Isolate*, v8::Local<v8::String>)
2020-10-07T12:10:13.444Z [err]    static Local<Value> New(Isolate* isolate, Local<String> value);
2020-10-07T12:10:13.444Z [err]                        ^~~
2020-10-07T12:10:13.444Z [err] /home/zerg/.cache/node-gyp/12.18.4/include/node/v8.h:5531:23: note:   candidate expects 2 arguments, 1 provided
2020-10-07T12:10:13.444Z [err] In file included from ../../nan/nan_new.h:189:0,
2020-10-07T12:10:13.444Z [err]                  from ../../nan/nan.h:203,
2020-10-07T12:10:13.444Z [err]                  from ../src/epoll.cc:15:
2020-10-07T12:10:13.444Z [err] ../../nan/nan_implementation_12_inl.h:337:58: error: expected primary-expression before ‘>’ token
2020-10-07T12:10:13.444Z [err]    return v8::StringObject::New(value).As<v8::StringObject>();
2020-10-07T12:10:13.444Z [err]                                                           ^
2020-10-07T12:10:13.444Z [err] ../../nan/nan_implementation_12_inl.h:337:60: error: expected primary-expression before ‘)’ token
2020-10-07T12:10:13.444Z [err]    return v8::StringObject::New(value).As<v8::StringObject>();
2020-10-07T12:10:13.444Z [err]                                                             ^
2020-10-07T12:10:13.512Z [err] In file included from ../src/epoll.cc:15:0:
2020-10-07T12:10:13.512Z [err] ../../nan/nan.h: In function ‘v8::Local<v8::Value> Nan::MakeCallback(v8::Local<v8::Object>, v8::Local<v8::Function>, int, v8::Local<v8::Value>*)’:
2020-10-07T12:10:13.512Z [err] ../../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]
2020-10-07T12:10:13.512Z [err]          v8::Isolate::GetCurrent(), target, func, argc, argv);
2020-10-07T12:10:13.512Z [err]                                                             ^
2020-10-07T12:10:13.513Z [err] In file included from ../src/epoll.cc:12:0:
2020-10-07T12:10:13.513Z [err] /home/zerg/.cache/node-gyp/12.18.4/include/node/node.h:182:50: note: declared here
2020-10-07T12:10:13.513Z [err]                  NODE_EXTERN v8::Local<v8::Value> MakeCallback(
2020-10-07T12:10:13.513Z [err]                                                   ^
2020-10-07T12:10:13.513Z [err] /home/zerg/.cache/node-gyp/12.18.4/include/node/node.h:101:42: note: in definition of macro ‘NODE_DEPRECATED’
2020-10-07T12:10:13.513Z [err]      __attribute__((deprecated(message))) declarator
2020-10-07T12:10:13.513Z [err]                                           ^~~~~~~~~~
2020-10-07T12:10:13.515Z [err] In file included from ../src/epoll.cc:15:0:
2020-10-07T12:10:13.515Z [err] ../../nan/nan.h: In function ‘v8::Local<v8::Value> Nan::MakeCallback(v8::Local<v8::Object>, v8::Local<v8::String>, int, v8::Local<v8::Value>*)’:
2020-10-07T12:10:13.515Z [err] ../../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]
2020-10-07T12:10:13.515Z [err]          v8::Isolate::GetCurrent(), target, symbol, argc, argv);
2020-10-07T12:10:13.515Z [err]                                                               ^
2020-10-07T12:10:13.516Z [err] In file included from ../src/epoll.cc:12:0:
2020-10-07T12:10:13.516Z [err] /home/zerg/.cache/node-gyp/12.18.4/include/node/node.h:175:50: note: declared here
2020-10-07T12:10:13.516Z [err]                  NODE_EXTERN v8::Local<v8::Value> MakeCallback(
2020-10-07T12:10:13.516Z [err]                                                   ^
2020-10-07T12:10:13.516Z [err] /home/zerg/.cache/node-gyp/12.18.4/include/node/node.h:101:42: note: in definition of macro ‘NODE_DEPRECATED’
2020-10-07T12:10:13.516Z [err]      __attribute__((deprecated(message))) declarator
2020-10-07T12:10:13.516Z [err]                                           ^~~~~~~~~~
2020-10-07T12:10:13.516Z [err] In file included from ../src/epoll.cc:15:0:
2020-10-07T12:10:13.516Z [err] ../../nan/nan.h: In function ‘v8::Local<v8::Value> Nan::MakeCallback(v8::Local<v8::Object>, const char*, int, v8::Local<v8::Value>*)’:
2020-10-07T12:10:13.516Z [err] ../../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]
2020-10-07T12:10:13.516Z [err]          v8::Isolate::GetCurrent(), target, method, argc, argv);
2020-10-07T12:10:13.516Z [err]                                                               ^
2020-10-07T12:10:13.517Z [err] In file included from ../src/epoll.cc:12:0:
2020-10-07T12:10:13.517Z [err] /home/zerg/.cache/node-gyp/12.18.4/include/node/node.h:168:50: note: declared here
2020-10-07T12:10:13.517Z [err]                  NODE_EXTERN v8::Local<v8::Value> MakeCallback(
2020-10-07T12:10:13.517Z [err]                                                   ^
2020-10-07T12:10:13.517Z [err] /home/zerg/.cache/node-gyp/12.18.4/include/node/node.h:101:42: note: in definition of macro ‘NODE_DEPRECATED’
2020-10-07T12:10:13.517Z [err]      __attribute__((deprecated(message))) declarator
2020-10-07T12:10:13.517Z [err]                                           ^~~~~~~~~~
2020-10-07T12:10:13.521Z [err] In file included from ../src/epoll.cc:15:0:
2020-10-07T12:10:13.521Z [err] ../../nan/nan.h: In constructor ‘Nan::Utf8String::Utf8String(v8::Local<v8::Value>)’:
2020-10-07T12:10:13.521Z [err] ../../nan/nan.h:916:53: error: no matching function for call to ‘v8::Value::ToString()’
2020-10-07T12:10:13.521Z [err]        v8::Local<v8::String> string = from->ToString();
2020-10-07T12:10:13.521Z [err]                                                      ^
2020-10-07T12:10:13.522Z [err] In file included from ../src/epoll.cc:11:0:
2020-10-07T12:10:13.522Z [err] /home/zerg/.cache/node-gyp/12.18.4/include/node/v8.h:2668:44: note: candidate: v8::MaybeLocal<v8::String> v8::Value::ToString(v8::Local<v8::Context>) const
2020-10-07T12:10:13.522Z [err]    V8_WARN_UNUSED_RESULT MaybeLocal<String> ToString(
2020-10-07T12:10:13.522Z [err]                                             ^~~~~~~~
2020-10-07T12:10:13.522Z [err] /home/zerg/.cache/node-gyp/12.18.4/include/node/v8.h:2668:44: note:   candidate expects 1 argument, 0 provided
2020-10-07T12:10:13.522Z [err] In file included from /home/zerg/.cache/node-gyp/12.18.4/include/node/v8-internal.h:14:0,
2020-10-07T12:10:13.522Z [err]                  from /home/zerg/.cache/node-gyp/12.18.4/include/node/v8.h:27,
2020-10-07T12:10:13.522Z [err]                  from ../src/epoll.cc:11:
2020-10-07T12:10:13.522Z [err] /home/zerg/.cache/node-gyp/12.18.4/include/node/v8.h:2684:31: note: candidate: v8::Local<v8::String> v8::Value::ToString(v8::Isolate*) const
2020-10-07T12:10:13.522Z [err]                  Local<String> ToString(Isolate* isolate) const);
2020-10-07T12:10:13.566Z [err]                       ^
2020-10-07T12:10:13.566Z [err] /home/zerg/.cache/node-gyp/12.18.4/include/node/v8config.h:328:3: note: in definition of macro ‘V8_DEPRECATED’
2020-10-07T12:10:13.566Z [err]    declarator __attribute__((deprecated(message)))
2020-10-07T12:10:13.566Z [err]    ^~~~~~~~~~
2020-10-07T12:10:13.568Z [err] In file included from ../src/epoll.cc:15:0:
2020-10-07T12:10:13.568Z [err] ../../nan/nan.h: In member function ‘void Nan::AsyncWorker::SaveToPersistent(const v8::Local<v8::String>&, const v8::Local<v8::Value>&)’:
2020-10-07T12:10:13.568Z [err] ../../nan/nan.h:1544:42: warning: ‘bool v8::Object::Set(v8::Local<v8::Value>, v8::Local<v8::Value>)’ is deprecated: Use maybe version [-Wdeprecated-declarations]
2020-10-07T12:10:13.568Z [err]      New(persistentHandle)->Set(key, value);
2020-10-07T12:10:13.568Z [err]                                           ^
2020-10-07T12:10:13.568Z [err] In file included from /home/zerg/.cache/node-gyp/12.18.4/include/node/v8-internal.h:14:0,
2020-10-07T12:10:13.568Z [err]                  from /home/zerg/.cache/node-gyp/12.18.4/include/node/v8.h:27,
2020-10-07T12:10:13.568Z [err]                  from ../src/epoll.cc:11:
2020-10-07T12:10:13.568Z [err] /home/zerg/.cache/node-gyp/12.18.4/include/node/v8.h:3499:22: note: declared here
2020-10-07T12:10:13.568Z [err]                  bool Set(Local<Value> key, Local<Value> value));
2020-10-07T12:10:13.568Z [err]                       ^
2020-10-07T12:10:13.568Z [err] /home/zerg/.cache/node-gyp/12.18.4/include/node/v8config.h:328:3: note: in definition of macro ‘V8_DEPRECATED’
2020-10-07T12:10:13.568Z [err]    declarator __attribute__((deprecated(message)))
2020-10-07T12:10:13.568Z [err]    ^~~~~~~~~~
2020-10-07T12:10:13.571Z [err] In file included from ../src/epoll.cc:15:0:
2020-10-07T12:10:13.571Z [err] ../../nan/nan.h: In member function ‘void Nan::AsyncWorker::SaveToPersistent(uint32_t, const v8::Local<v8::Value>&)’:
2020-10-07T12:10:13.571Z [err] ../../nan/nan.h:1550:44: warning: ‘bool v8::Object::Set(uint32_t, v8::Local<v8::Value>)’ is deprecated: Use maybe version [-Wdeprecated-declarations]
2020-10-07T12:10:13.571Z [err]      New(persistentHandle)->Set(index, value);
2020-10-07T12:10:13.571Z [err]                                             ^
2020-10-07T12:10:13.572Z [err] In file included from /home/zerg/.cache/node-gyp/12.18.4/include/node/v8-internal.h:14:0,
2020-10-07T12:10:13.572Z [err]                  from /home/zerg/.cache/node-gyp/12.18.4/include/node/v8.h:27,
2020-10-07T12:10:13.572Z [err]                  from ../src/epoll.cc:11:
2020-10-07T12:10:13.572Z [err] /home/zerg/.cache/node-gyp/12.18.4/include/node/v8.h:3508:22: note: declared here
2020-10-07T12:10:13.572Z [err]                  bool Set(uint32_t index, Local<Value> value));
2020-10-07T12:10:13.572Z [err]                       ^
2020-10-07T12:10:13.572Z [err] /home/zerg/.cache/node-gyp/12.18.4/include/node/v8config.h:328:3: note: in definition of macro ‘V8_DEPRECATED’
2020-10-07T12:10:13.572Z [err]    declarator __attribute__((deprecated(message)))
2020-10-07T12:10:13.572Z [err]    ^~~~~~~~~~
2020-10-07T12:10:13.574Z [err] In file included from ../src/epoll.cc:15:0:
2020-10-07T12:10:13.574Z [err] ../../nan/nan.h: In member function ‘v8::Local<v8::Value> Nan::AsyncWorker::GetFromPersistent(const char*) const’:
2020-10-07T12:10:13.574Z [err] ../../nan/nan.h:1556:61: warning: ‘v8::Local<v8::Value> v8::Object::Get(v8::Local<v8::Value>)’ is deprecated: Use maybe version [-Wdeprecated-declarations]
2020-10-07T12:10:13.574Z [err]          New(persistentHandle)->Get(New(key).ToLocalChecked()));
2020-10-07T12:10:13.574Z [err]                                                              ^
2020-10-07T12:10:13.574Z [err] In file included from /home/zerg/.cache/node-gyp/12.18.4/include/node/v8-internal.h:14:0,
2020-10-07T12:10:13.574Z [err]                  from /home/zerg/.cache/node-gyp/12.18.4/include/node/v8.h:27,
2020-10-07T12:10:13.574Z [err]                  from ../src/epoll.cc:11:
2020-10-07T12:10:13.574Z [err] /home/zerg/.cache/node-gyp/12.18.4/include/node/v8.h:3553:51: note: declared here
2020-10-07T12:10:13.574Z [err]    V8_DEPRECATED("Use maybe version", Local<Value> Get(Local<Value> key));
2020-10-07T12:10:13.574Z [err]                                                    ^
2020-10-07T12:10:13.574Z [err] /home/zerg/.cache/node-gyp/12.18.4/include/node/v8config.h:328:3: note: in definition of macro ‘V8_DEPRECATED’
2020-10-07T12:10:13.574Z [err]    declarator __attribute__((deprecated(message)))
2020-10-07T12:10:13.574Z [err]    ^~~~~~~~~~
2020-10-07T12:10:13.576Z [err] In file included from ../src/epoll.cc:15:0:
2020-10-07T12:10:13.576Z [err] ../../nan/nan.h: In member function ‘v8::Local<v8::Value> Nan::AsyncWorker::GetFromPersistent(const v8::Local<v8::String>&) const’:
2020-10-07T12:10:13.576Z [err] ../../nan/nan.h:1562:55: warning: ‘v8::Local<v8::Value> v8::Object::Get(v8::Local<v8::Value>)’ is deprecated: Use maybe version [-Wdeprecated-declarations]
2020-10-07T12:10:13.576Z [err]      return scope.Escape(New(persistentHandle)->Get(key));
2020-10-07T12:10:13.576Z [err]                                                        ^
2020-10-07T12:10:13.577Z [err] In file included from /home/zerg/.cache/node-gyp/12.18.4/include/node/v8-internal.h:14:0,
2020-10-07T12:10:13.577Z [err]                  from /home/zerg/.cache/node-gyp/12.18.4/include/node/v8.h:27,
2020-10-07T12:10:13.577Z [err]                  from ../src/epoll.cc:11:
2020-10-07T12:10:13.577Z [err] /home/zerg/.cache/node-gyp/12.18.4/include/node/v8.h:3553:51: note: declared here
2020-10-07T12:10:13.577Z [err]    V8_DEPRECATED("Use maybe version", Local<Value> Get(Local<Value> key));
2020-10-07T12:10:13.577Z [err]                                                    ^
2020-10-07T12:10:13.577Z [err] /home/zerg/.cache/node-gyp/12.18.4/include/node/v8config.h:328:3: note: in definition of macro ‘V8_DEPRECATED’
2020-10-07T12:10:13.577Z [err]    declarator __attribute__((deprecated(message)))
2020-10-07T12:10:13.577Z [err]    ^~~~~~~~~~
2020-10-07T12:10:13.578Z [err] In file included from ../src/epoll.cc:15:0:
2020-10-07T12:10:13.578Z [err] ../../nan/nan.h: In member function ‘v8::Local<v8::Value> Nan::AsyncWorker::GetFromPersistent(uint32_t) const’:
2020-10-07T12:10:13.578Z [err] ../../nan/nan.h:1567:57: warning: ‘v8::Local<v8::Value> v8::Object::Get(uint32_t)’ is deprecated: Use maybe version [-Wdeprecated-declarations]
2020-10-07T12:10:13.578Z [err]      return scope.Escape(New(persistentHandle)->Get(index));
2020-10-07T12:10:13.578Z [err]                                                          ^
2020-10-07T12:10:13.579Z [err] In file included from /home/zerg/.cache/node-gyp/12.18.4/include/node/v8-internal.h:14:0,
2020-10-07T12:10:13.579Z [err]                  from /home/zerg/.cache/node-gyp/12.18.4/include/node/v8.h:27,
2020-10-07T12:10:13.579Z [err]                  from ../src/epoll.cc:11:
2020-10-07T12:10:13.579Z [err] /home/zerg/.cache/node-gyp/12.18.4/include/node/v8.h:3557:51: note: declared here
2020-10-07T12:10:13.579Z [err]    V8_DEPRECATED("Use maybe version", Local<Value> Get(uint32_t index));
2020-10-07T12:10:13.579Z [err]                                                    ^
2020-10-07T12:10:13.579Z [err] /home/zerg/.cache/node-gyp/12.18.4/include/node/v8config.h:328:3: note: in definition of macro ‘V8_DEPRECATED’
2020-10-07T12:10:13.579Z [err]    declarator __attribute__((deprecated(message)))
2020-10-07T12:10:13.579Z [err]    ^~~~~~~~~~
2020-10-07T12:10:13.707Z [err] In file included from /usr/include/c++/7/cassert:44:0,
2020-10-07T12:10:13.707Z [err]                  from /home/zerg/.cache/node-gyp/12.18.4/include/node/node_object_wrap.h:26,
2020-10-07T12:10:13.707Z [err]                  from ../src/epoll.cc:13:
2020-10-07T12:10:13.707Z [err] ../../nan/nan_object_wrap.h: In destructor ‘virtual Nan::ObjectWrap::~ObjectWrap()’:
2020-10-07T12:10:13.707Z [err] ../../nan/nan_object_wrap.h:24:25: error: ‘class Nan::Persistent<v8::Object>’ has no member named ‘IsNearDeath’
2020-10-07T12:10:13.707Z [err]      assert(persistent().IsNearDeath());
2020-10-07T12:10:13.707Z [err]                          ^
2020-10-07T12:10:13.716Z [err] In file included from ../../nan/nan.h:2365:0,
2020-10-07T12:10:13.716Z [err]                  from ../src/epoll.cc:15:
2020-10-07T12:10:13.716Z [err] ../../nan/nan_object_wrap.h: In member function ‘void Nan::ObjectWrap::MakeWeak()’:
2020-10-07T12:10:13.716Z [err] ../../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]
2020-10-07T12:10:13.716Z [err]      persistent().MarkIndependent();
2020-10-07T12:10:13.716Z [err]                                   ^
2020-10-07T12:10:13.716Z [err] In file included from /home/zerg/.cache/node-gyp/12.18.4/include/node/v8-internal.h:14:0,
2020-10-07T12:10:13.716Z [err]                  from /home/zerg/.cache/node-gyp/12.18.4/include/node/v8.h:27,
2020-10-07T12:10:13.716Z [err]                  from ../src/epoll.cc:11:
2020-10-07T12:10:13.716Z [err] /home/zerg/.cache/node-gyp/12.18.4/include/node/v8.h:570:22: note: declared here
2020-10-07T12:10:13.716Z [err]        V8_INLINE void MarkIndependent());
2020-10-07T12:10:13.716Z [err]                       ^
2020-10-07T12:10:13.716Z [err] /home/zerg/.cache/node-gyp/12.18.4/include/node/v8config.h:328:3: note: in definition of macro ‘V8_DEPRECATED’
2020-10-07T12:10:13.716Z [err]    declarator __attribute__((deprecated(message)))
2020-10-07T12:10:13.716Z [err]    ^~~~~~~~~~
2020-10-07T12:10:13.721Z [err] In file included from /usr/include/c++/7/cassert:44:0,
2020-10-07T12:10:13.721Z [err]                  from /home/zerg/.cache/node-gyp/12.18.4/include/node/node_object_wrap.h:26,
2020-10-07T12:10:13.721Z [err]                  from ../src/epoll.cc:13:
2020-10-07T12:10:13.721Z [err] ../../nan/nan_object_wrap.h: In static member function ‘static void Nan::ObjectWrap::WeakCallback(const v8::WeakCallbackInfo<Nan::ObjectWrap>&)’:
2020-10-07T12:10:13.721Z [err] ../../nan/nan_object_wrap.h:124:26: error: ‘class Nan::Persistent<v8::Object>’ has no member named ‘IsNearDeath’
2020-10-07T12:10:13.721Z [err]      assert(wrap->handle_.IsNearDeath());
2020-10-07T12:10:13.721Z [err]                           ^
2020-10-07T12:10:13.879Z [err] ../src/epoll.cc: In static member function ‘static void Epoll::Init(Nan::ADDON_REGISTER_FUNCTION_ARGS_TYPE)’:
2020-10-07T12:10:13.879Z [err] ../src/epoll.cc:175:39: error: no matching function for call to ‘v8::FunctionTemplate::GetFunction()’
2020-10-07T12:10:13.879Z [err]    constructor.Reset(ctor->GetFunction());
2020-10-07T12:10:13.879Z [err]                                        ^
2020-10-07T12:10:13.880Z [err] In file included from ../src/epoll.cc:11:0:
2020-10-07T12:10:13.880Z [err] /home/zerg/.cache/node-gyp/12.18.4/include/node/v8.h:6126:46: note: candidate: v8::MaybeLocal<v8::Function> v8::FunctionTemplate::GetFunction(v8::Local<v8::Context>)
2020-10-07T12:10:13.880Z [err]    V8_WARN_UNUSED_RESULT MaybeLocal<Function> GetFunction(
2020-10-07T12:10:13.880Z [err]                                               ^~~~~~~~~~~
2020-10-07T12:10:13.881Z [err] /home/zerg/.cache/node-gyp/12.18.4/include/node/v8.h:6126:46: note:   candidate expects 1 argument, 0 provided
2020-10-07T12:10:13.882Z [err] ../src/epoll.cc:177:23: error: no matching function for call to ‘v8::FunctionTemplate::GetFunction()’
2020-10-07T12:10:13.882Z [err]      ctor->GetFunction());
2020-10-07T12:10:13.882Z [err]                        ^
2020-10-07T12:10:13.882Z [err] In file included from ../src/epoll.cc:11:0:
2020-10-07T12:10:13.882Z [err] /home/zerg/.cache/node-gyp/12.18.4/include/node/v8.h:6126:46: note: candidate: v8::MaybeLocal<v8::Function> v8::FunctionTemplate::GetFunction(v8::Local<v8::Context>)
2020-10-07T12:10:13.882Z [err]    V8_WARN_UNUSED_RESULT MaybeLocal<Function> GetFunction(
2020-10-07T12:10:13.882Z [err]                                               ^~~~~~~~~~~
2020-10-07T12:10:13.882Z [err] /home/zerg/.cache/node-gyp/12.18.4/include/node/v8.h:6126:46: note:   candidate expects 1 argument, 0 provided
2020-10-07T12:10:13.892Z [err] ../src/epoll.cc: In static member function ‘static Nan::NAN_METHOD_RETURN_TYPE Epoll::Add(Nan::NAN_METHOD_ARGS_TYPE)’:
2020-10-07T12:10:13.892Z [err] ../src/epoll.cc:210:44: error: no matching function for call to ‘v8::Value::Int32Value()’
2020-10-07T12:10:13.892Z [err]    int err = epoll->Add(info[0]->Int32Value(), info[1]->Int32Value());
2020-10-07T12:10:13.892Z [err]                                             ^
2020-10-07T12:10:13.897Z [err] ../src/epoll.cc: In static member function ‘static Nan::NAN_METHOD_RETURN_TYPE Epoll::Modify(Nan::NAN_METHOD_ARGS_TYPE)’:
2020-10-07T12:10:13.897Z [err] ../src/epoll.cc:230:47: error: no matching function for call to ‘v8::Value::Int32Value()’
2020-10-07T12:10:13.897Z [err]    int err = epoll->Modify(info[0]->Int32Value(), info[1]->Int32Value());
2020-10-07T12:10:13.897Z [err]                                                ^
2020-10-07T12:10:13.897Z [err] In file included from ../src/epoll.cc:11:0:
2020-10-07T12:10:13.897Z [err] /home/zerg/.cache/node-gyp/12.18.4/include/node/v8.h:2709:40: note: candidate: v8::Maybe<int> v8::Value::Int32Value(v8::Local<v8::Context>) const
2020-10-07T12:10:13.897Z [err]    V8_WARN_UNUSED_RESULT Maybe<int32_t> Int32Value(Local<Context> context) const;
2020-10-07T12:10:13.897Z [err]                                         ^~~~~~~~~~
2020-10-07T12:10:13.898Z [err] /home/zerg/.cache/node-gyp/12.18.4/include/node/v8.h:2709:40: note:   candidate expects 1 argument, 0 provided
2020-10-07T12:10:13.898Z [err] ../src/epoll.cc:230:70: error: no matching function for call to ‘v8::Value::Int32Value()’
2020-10-07T12:10:13.898Z [err]    int err = epoll->Modify(info[0]->Int32Value(), info[1]->Int32Value());
2020-10-07T12:10:13.898Z [err]                                                                       ^
2020-10-07T12:10:13.898Z [err] In file included from ../src/epoll.cc:11:0:
2020-10-07T12:10:13.898Z [err] /home/zerg/.cache/node-gyp/12.18.4/include/node/v8.h:2709:40: note: candidate: v8::Maybe<int>                               ^~~~~~~~~~
2020-10-07T12:10:13.898Z [err] /home/zerg/.cache/node-gyp/12.18.4/include/node/v8.h:2709:40: note:   candidate expects 1 argument, 0 provided
2020-10-07T12:10:13.903Z [err] ../src/epoll.cc: In static member function ‘static Nan::NAN_METHOD_RETURN_TYPE Epoll::Remove(Nan::NAN_METHOD_ARGS_TYPE)’:
2020-10-07T12:10:13.903Z [err] ../src/epoll.cc:247:47: error: no matching function for call to ‘v8::Value::Int32Value()’
2020-10-07T12:10:13.903Z [err]    int err = epoll->Remove(info[0]->Int32Value());
2020-10-07T12:10:13.903Z [err]                                                ^
2020-10-07T12:10:13.903Z [err] In file included from ../src/epoll.cc:11:0:
2020-10-07T12:10:13.903Z [err] /home/zerg/.cache/node-gyp/12.18.4/include/node/v8.h:2709:40: note: candidate: v8::Maybe<int> v8::Value::Int32Value(v8::Local<v8::Context>) const
2020-10-07T12:10:13.903Z [err]    V8_WARN_UNUSED_RESULT Maybe<int32_t> Int32Value(Local<Context> context) const;
2020-10-07T12:10:13.903Z [err]                                         ^~~~~~~~~~
2020-10-07T12:10:13.903Z [err] /home/zerg/.cache/node-gyp/12.18.4/include/node/v8.h:2709:40: note:   candidate expects 1 argument, 0 provided
2020-10-07T12:10:15.304Z [out] epoll.target.mk:111: recipe for target 'Release/obj.target/epoll/src/epoll.o' failed
2020-10-07T12:10:15.304Z [out] make: Leaving directory '/home/zerg/.node-red/node_modules/epoll/build'
2020-10-07T12:10:15.305Z [err] make: *** [Release/obj.target/epoll/src/epoll.o] Error 1
2020-10-07T12:10:15.318Z [err] gyp
2020-10-07T12:10:15.321Z [err]  
2020-10-07T12:10:15.328Z [err] ERR! stack
2020-10-07T12:10:15.328Z [err]      at Process.ChildProcess._handle.onexit (internal/child_process.js:275:12)
2020-10-07T12:10:15.330Z [err] gyp
2020-10-07T12:10:15.330Z [err]  ERR! System
2020-10-07T12:10:15.330Z [err]  Linux 5.4.27-sunxi
2020-10-07T12:10:15.331Z [err] gyp
2020-10-07T12:10:15.331Z [err]  ERR! 
2020-10-07T12:10:15.331Z [err] command "/usr/bin/node" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
2020-10-07T12:10:15.331Z [err] gyp
2020-10-07T12:10:15.332Z [err]  ERR! 
2020-10-07T12:10:15.332Z [err] cwd /home/zerg/.node-red/node_modules/epoll
2020-10-07T12:10:15.332Z [err] gyp 
2020-10-07T12:10:15.332Z [err] ERR! node -v
2020-10-07T12:10:15.332Z [err]  v12.18.4
2020-10-07T12:10:16.143Z [err]  ERR!
2020-10-07T12:10:16.144Z [err]  This is probably not a problem with npm. There is likely additional logging output above.
2020-10-07T12:10:16.182Z [err] 
2020-10-07T12:10:16.182Z [err] npm 
2020-10-07T12:10:16.184Z [err] ERR! A complete log of this run can be found in:
2020-10-07T12:10:16.184Z [err] npm ERR!     /home/zerg/.npm/_logs/2020-10-07T12_10_16_155Z-debug.log
2020-10-07T12:10:16.213Z rc=1

That is probably an incompatibility with nodejs 12. If you submit an issue on the nodes GitHub page it may get fixed.

This topic was automatically closed 60 days after the last reply. New replies are no longer allowed.