robertsLando / node-red-contrib-m-bus

Node-Red node for M-Bus protocol
MIT License
10 stars 6 forks source link

Install on NodeRED 1.0.4 error #8

Closed fromCologne closed 3 years ago

fromCologne commented 4 years ago

Hi Daniel,

tried to install 1.3.1 on nodered 1.0.4 with the internal mechanism using gui. No success.

_... make: *** [serialport.target.mk:112: Release/obj.target/serialport/src/serialport.o] Fehler 1 2020-06-29T05:06:00.813Z [out] make: Verzeichnis „/root/.node-red/node_modules/node-red-contrib-m-bus/nodemodules/serialport/build“ wird verlassen 2020-06-29T05:06:00.819Z [err] gyp 2020-06-29T05:06:00.820Z [err] ERR! 2020-06-29T05:06:00.820Z [err] build error ... Failed at the serialport@6.2.1 install script.

I tried to install node serialport@9.0.0 manually. No improvment.

Regards Ingo

robertsLando commented 4 years ago

Could you show some more log output?

fromCologne commented 4 years ago

Form the nodered installer gui:

_installieren : node-red-contrib-m-bus 1.3.1

npm install --no-audit --no-update-notifier --save --save-prefix="~" --production node-red-contrib-m-bus@1.3.1 [out] [out] > serialport@6.2.1 install /root/.node-red/node_modules/node-red-contrib-m-bus/node_modules/serialport [out] > prebuild-install || node-gyp rebuild [out] [err] prebuild-install [err] WARN install No prebuilt binaries found (target=12.18.1 runtime=node arch=arm platform=linux) [out] make: Verzeichnis „/root/.node-red/node_modules/node-red-contrib-m-bus/node_modules/serialport/build“ wird betreten [out] CXX(target) Release/obj.target/serialport/src/serialport.o [err] In file included from ../src/./serialport.h:6, [err] from ../src/serialport.cpp:1: [err] ../../../../nan/nan.h: In function ‘void Nan::AsyncQueueWorker(Nan::AsyncWorker)’: [err] ../../../../nan/nan.h:2294: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] [err] , reinterpret_cast(AsyncExecuteComplete) [err] ^ [err] ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Open(Nan::NAN_METHOD_ARGS_TYPE)’: [err] ../src/serialport.cpp:41:48: error: no matching function for call to ‘v8::Value::ToString()’ [err] v8::String::Utf8Value path(info[0]->ToString()); [err] ^ [err] In file included from /root/.cache/node-gyp/12.18.1/include/node/node.h:67, [err] from ../../../../nan/nan.h:56, [err] from ../src/./serialport.h:6, [err] from ../src/serialport.cpp:1: [err] /root/.cache/node-gyp/12.18.1/include/node/v8.h:2668:44: note: candidate: ‘v8::MaybeLocal v8::Value::ToString(v8::Local) const’ [err] V8_WARN_UNUSED_RESULT MaybeLocal ToString( [err] ^~~~ [err] /root/.cache/node-gyp/12.18.1/include/node/v8.h:2668:44: note: candidate expects 1 argument, 0 provided [err] In file included from /root/.cache/node-gyp/12.18.1/include/node/v8-internal.h:14, [err] from /root/.cache/node-gyp/12.18.1/include/node/v8.h:27, [err] from /root/.cache/node-gyp/12.18.1/include/node/node.h:67, [err] from ../../../../nan/nan.h:56, [err] from ../src/./serialport.h:6, [err] from ../src/serialport.cpp:1: [err] /root/.cache/node-gyp/12.18.1/include/node/v8.h:2684:31: note: candidate: ‘v8::Local v8::Value::ToString(v8::Isolate) const’ [err] Local ToString(Isolate isolate) const); [err] ^~~~ [err] /root/.cache/node-gyp/12.18.1/include/node/v8config.h:328:3: note: in definition of macro ‘V8_DEPRECATED’ [err] declarator attribute((deprecated(message))) [err] ^~~~~~ [err] /root/.cache/node-gyp/12.18.1/include/node/v8.h:2684:31: note: candidate expects 1 argument, 0 provided [err] Local ToString(Isolate isolate) const); [err] ^~~~ [err] /root/.cache/node-gyp/12.18.1/include/node/v8config.h:328:3: note: in definition of macro ‘V8_DEPRECATED’ [err] declarator attribute((deprecated(message))) [err] ^~~~~~ [err] ../src/serialport.cpp:48:53: error: no matching function for call to ‘v8::Value::ToObject()’ [err] v8::Local options = info[1]->ToObject(); [err] ^ [err] In file included from /root/.cache/node-gyp/12.18.1/include/node/node.h:67, [err] from ../../../../nan/nan.h:56, [err] from ../src/./serialport.h:6, [err] from ../src/serialport.cpp:1: [err] /root/.cache/node-gyp/12.18.1/include/node/v8.h:2672:44: note: candidate: ‘v8::MaybeLocal v8::Value::ToObject(v8::Local) const’ [err] V8_WARN_UNUSED_RESULT MaybeLocal ToObject( [err] ^~~~ [err] /root/.cache/node-gyp/12.18.1/include/node/v8.h:2672:44: note: candidate expects 1 argument, 0 provided [err] In file included from /root/.cache/node-gyp/12.18.1/include/node/v8-internal.h:14, [err] from /root/.cache/node-gyp/12.18.1/include/node/v8.h:27, [err] from /root/.cache/node-gyp/12.18.1/include/node/node.h:67, [err] from ../../../../nan/nan.h:56, [err] from ../src/./serialport.h:6, [err] from ../src/serialport.cpp:1: [err] /root/.cache/node-gyp/12.18.1/include/node/v8.h:2686:31: note: candidate: ‘v8::Local v8::Value::ToObject(v8::Isolate) const’ [err] Local ToObject(Isolate isolate) const); [err] ^~~~ [err] /root/.cache/node-gyp/12.18.1/include/node/v8config.h:328:3: note: in definition of macro ‘V8_DEPRECATED’ [err] declarator attribute((deprecated(message))) [err] ^~~~~~ [err] /root/.cache/node-gyp/12.18.1/include/node/v8.h:2686:31: note: candidate expects 1 argument, 0 provided [err] Local ToObject(Isolate isolate) const); [err] ^~~~ [err] /root/.cache/node-gyp/12.18.1/include/node/v8config.h:328:3: note: in definition of macro ‘V8_DEPRECATED’ [err] declarator attribute((deprecated(message))) [err] ^~~~~~ [err] ../src/serialport.cpp:78:69: 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] [err] uv_queue_work(uv_default_loop(), req, EIO_Open, (uv_after_work_cb)EIO_AfterOpen); [err] ^~~~~ [err] ../src/serialport.cpp: In function ‘void EIO_AfterOpen(uv_work_t)’: [err] ../src/serialport.cpp:95:30: warning: ‘v8::Local Nan::Callback::Call(int, v8::Local) const’ is deprecated [-Wdeprecated-declarations] [err] data->callback.Call(2, argv); [err] ^ [err] In file included from ../src/./serialport.h:6, [err] from ../src/serialport.cpp:1: [err] ../../../../nan/nan.h:1742:3: note: declared here [err] Call(int argc, v8::Local argv[]) const { [err] ^~~~ [err] ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Update(Nan::NAN_METHOD_ARGS_TYPE)’: [err] ../src/serialport.cpp:113:53: error: no matching function for call to ‘v8::Value::ToObject()’ [err] v8::Local options = info[1]->ToObject(); [err] ^ [err] In file included from /root/.cache/node-gyp/12.18.1/include/node/node.h:67, [err] from ../../../../nan/nan.h:56, [err] from ../src/./serialport.h:6, [err] from ../src/serialport.cpp:1: [err] /root/.cache/node-gyp/12.18.1/include/node/v8.h:2672:44: note: candidate: ‘v8::MaybeLocal v8::Value::ToObject(v8::Local) const’ [err] V8_WARN_UNUSED_RESULT MaybeLocal ToObject( [err] ^~~~ [err] /root/.cache/node-gyp/12.18.1/include/node/v8.h:2672:44: note: candidate expects 1 argument, 0 provided [err] In file included from /root/.cache/node-gyp/12.18.1/include/node/v8-internal.h:14, [err] from /root/.cache/node-gyp/12.18.1/include/node/v8.h:27, [err] from /root/.cache/node-gyp/12.18.1/include/node/node.h:67, [err] from ../../../../nan/nan.h:56, [err] from ../src/./serialport.h:6, [err] from ../src/serialport.cpp:1: [err] /root/.cache/node-gyp/12.18.1/include/node/v8.h:2686:31: note: candidate: ‘v8::Local v8::Value::ToObject(v8::Isolate) const’ [err] Local ToObject(Isolate isolate) const); [err] ^~~~ [err] /root/.cache/node-gyp/12.18.1/include/node/v8config.h:328:3: note: in definition of macro ‘V8_DEPRECATED’ [err] declarator attribute((deprecated(message))) [err] ^~~~~~ [err] /root/.cache/node-gyp/12.18.1/include/node/v8.h:2686:31: note: candidate expects 1 argument, 0 provided [err] Local ToObject(Isolate isolate) const); [err] ^~~~ [err] /root/.cache/node-gyp/12.18.1/include/node/v8config.h:328:3: note: in definition of macro ‘V8_DEPRECATED’ [err] declarator attribute((deprecated(message))) [err] ^~~~~~ [err] ../src/serialport.cpp:135:71: 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] [err] uv_queue_work(uv_default_loop(), req, EIO_Update, (uv_after_work_cb)EIO_AfterUpdate); [err] ^~~~~~~ [err] ../src/serialport.cpp: In function ‘void EIO_AfterUpdate(uv_work_t)’: [err] ../src/serialport.cpp:150:30: warning: ‘v8::Local Nan::Callback::Call(int, v8::Local) const’ is deprecated [-Wdeprecated-declarations] [err] data->callback.Call(1, argv); [err] ^ [err] In file included from ../src/./serialport.h:6, [err] from ../src/serialport.cpp:1: [err] ../../../../nan/nan.h:1742:3: note: declared here [err] Call(int argc, v8::Local argv[]) const { [err] ^~~~ [err] ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Close(Nan::NAN_METHOD_ARGS_TYPE)’: [err] ../src/serialport.cpp:175:70: 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] [err] uv_queue_work(uv_default_loop(), req, EIO_Close, (uv_after_work_cb)EIO_AfterClose); [err] ^~~~~~ [err] ../src/serialport.cpp: In function ‘void EIO_AfterClose(uv_work_t)’: [err] ../src/serialport.cpp:188:30: warning: ‘v8::Local Nan::Callback::Call(int, v8::Local) const’ is deprecated [-Wdeprecated-declarations] [err] data->callback.Call(1, argv); [err] ^ [err] In file included from ../src/./serialport.h:6, [err] from ../src/serialport.cpp:1: [err] ../../../../nan/nan.h:1742:3: note: declared here [err] Call(int argc, v8::Local argv[]) const { [err] ^~~~ [err] ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Flush(Nan::NAN_METHOD_ARGS_TYPE)’: [err] ../src/serialport.cpp:215:70: 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] [err] uv_queue_work(uv_default_loop(), req, EIO_Flush, (uv_after_work_cb)EIO_AfterFlush); [err] ^~~~~~ [err] ../src/serialport.cpp: In function ‘void EIO_AfterFlush(uv_work_t)’: [err] ../src/serialport.cpp:231:30: warning: ‘v8::Local Nan::Callback::Call(int, v8::Local) const’ is deprecated [-Wdeprecated-declarations] [err] data->callback.Call(1, argv); [err] ^ [err] In file included from ../src/./serialport.h:6, [err] from ../src/serialport.cpp:1: [err] ../../../../nan/nan.h:1742:3: note: declared here [err] Call(int argc, v8::Local argv[]) const { [err] ^~~~ [err] ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Set(Nan::NAN_METHOD_ARGS_TYPE)’: [err] ../src/serialport.cpp:250:53: error: no matching function for call to ‘v8::Value::ToObject()’ [err] v8::Local options = info[1]->ToObject(); [err] ^ [err] In file included from /root/.cache/node-gyp/12.18.1/include/node/node.h:67, [err] from ../../../../nan/nan.h:56, [err] from ../src/./serialport.h:6, [err] from ../src/serialport.cpp:1: [err] /root/.cache/node-gyp/12.18.1/include/node/v8.h:2672:44: note: candidate: ‘v8::MaybeLocal v8::Value::ToObject(v8::Local) const’ [err] V8_WARN_UNUSED_RESULT MaybeLocal ToObject( [err] ^~~~ [err] /root/.cache/node-gyp/12.18.1/include/node/v8.h:2672:44: note: candidate expects 1 argument, 0 provided [err] In file included from /root/.cache/node-gyp/12.18.1/include/node/v8-internal.h:14, [err] from /root/.cache/node-gyp/12.18.1/include/node/v8.h:27, [err] from /root/.cache/node-gyp/12.18.1/include/node/node.h:67, [err] from ../../../../nan/nan.h:56, [err] from ../src/./serialport.h:6, [err] from ../src/serialport.cpp:1: [err] /root/.cache/node-gyp/12.18.1/include/node/v8.h:2686:31: note: candidate: ‘v8::Local v8::Value::ToObject(v8::Isolate) const’ [err] Local ToObject(Isolate isolate) const); [err] ^~~~ [err] /root/.cache/node-gyp/12.18.1/include/node/v8config.h:328:3: note: in definition of macro ‘V8_DEPRECATED’ [err] declarator attribute((deprecated(message))) [err] ^~~~~~ [err] /root/.cache/node-gyp/12.18.1/include/node/v8.h:2686:31: note: candidate expects 1 argument, 0 provided [err] Local ToObject(Isolate isolate) const); [err] ^~~~ [err] /root/.cache/node-gyp/12.18.1/include/node/v8config.h:328:3: note: in definition of macro ‘V8_DEPRECATED’ [err] declarator attribute((deprecated(message))) [err] ^~~~~~ [err] ../src/serialport.cpp:270:68: 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] [err] uv_queue_work(uv_default_loop(), req, EIO_Set, (uv_after_work_cb)EIO_AfterSet); [err] ^~~~ [err] ../src/serialport.cpp: In function ‘void EIO_AfterSet(uv_work_t)’: [err] ../src/serialport.cpp:285:30: warning: ‘v8::Local Nan::Callback::Call(int, v8::Local) const’ is deprecated [-Wdeprecated-declarations] [err] data->callback.Call(1, argv); [err] ^ [err] In file included from ../src/./serialport.h:6, [err] from ../src/serialport.cpp:1: [err] ../../../../nan/nan.h:1742:3: note: declared here [err] Call(int argc, v8::Local argv[]) const { [err] ^~~~ [err] ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Get(Nan::NAN_METHOD_ARGS_TYPE)’: [err] ../src/serialport.cpp:314:68: 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] [err] uv_queue_work(uv_default_loop(), req, EIO_Get, (uv_after_work_cb)EIO_AfterGet); [err] ^~~~ [err] ../src/serialport.cpp: In function ‘void EIO_AfterGet(uv_work_t)’: [err] ../src/serialport.cpp:329:96: warning: ‘bool v8::Object::Set(v8::Local, v8::Local)’ is deprecated: Use maybe version [-Wdeprecated-declarations] [err] results->Set(Nan::New("cts").ToLocalChecked(), Nan::New(data->cts)); [err] ^ [err] In file included from /root/.cache/node-gyp/12.18.1/include/node/v8-internal.h:14, [err] from /root/.cache/node-gyp/12.18.1/include/node/v8.h:27, [err] from /root/.cache/node-gyp/12.18.1/include/node/node.h:67, [err] from ../../../../nan/nan.h:56, [err] from ../src/./serialport.h:6, [err] from ../src/serialport.cpp:1: [err] /root/.cache/node-gyp/12.18.1/include/node/v8.h:3499:22: note: declared here [err] bool Set(Local key, Local value)); [err] ^~~ [err] /root/.cache/node-gyp/12.18.1/include/node/v8config.h:328:3: note: in definition of macro ‘V8_DEPRECATED’ [err] declarator attribute((deprecated(message))) [err] ^~~~~~ [err] ../src/serialport.cpp:330:96: warning: ‘bool v8::Object::Set(v8::Local, v8::Local)’ is deprecated: Use maybe version [-Wdeprecated-declarations] [err] results->Set(Nan::New("dsr").ToLocalChecked(), Nan::New(data->dsr)); [err] ^ [err] In file included from /root/.cache/node-gyp/12.18.1/include/node/v8-internal.h:14, [err] from /root/.cache/node-gyp/12.18.1/include/node/v8.h:27, [err] from /root/.cache/node-gyp/12.18.1/include/node/node.h:67, [err] from ../../../../nan/nan.h:56, [err] from ../src/./serialport.h:6, [err] from ../src/serialport.cpp:1: [err] /root/.cache/node-gyp/12.18.1/include/node/v8.h:3499:22: note: declared here [err] bool Set(Local key, Local value)); [err] ^~~ [err] /root/.cache/node-gyp/12.18.1/include/node/v8config.h:328:3: note: in definition of macro ‘V8_DEPRECATED’ [err] declarator attribute((deprecated(message))) [err] ^~~~~~ [err] ../src/serialport.cpp:331:96: warning: ‘bool v8::Object::Set(v8::Local, v8::Local)’ is deprecated: Use maybe version [-Wdeprecated-declarations] [err] results->Set(Nan::New("dcd").ToLocalChecked(), Nan::New(data->dcd)); [err] ^ [err] In file included from /root/.cache/node-gyp/12.18.1/include/node/v8-internal.h:14, [err] from /root/.cache/node-gyp/12.18.1/include/node/v8.h:27, [err] from /root/.cache/node-gyp/12.18.1/include/node/node.h:67, [err] from ../../../../nan/nan.h:56, [err] from ../src/./serialport.h:6, [err] from ../src/serialport.cpp:1: [err] /root/.cache/node-gyp/12.18.1/include/node/v8.h:3499:22: note: declared here [err] bool Set(Local key, Local value)); [err] ^~~ [err] /root/.cache/node-gyp/12.18.1/include/node/v8config.h:328:3: note: in definition of macro ‘V8_DEPRECATED’ [err] declarator attribute((deprecated(message))) [err] ^~~~~~ [err] ../src/serialport.cpp:336:30: warning: ‘v8::Local Nan::Callback::Call(int, v8::Local) const’ is deprecated [-Wdeprecated-declarations] [err] data->callback.Call(2, argv); [err] ^ [err] In file included from ../src/./serialport.h:6, [err] from ../src/serialport.cpp:1: [err] ../../../../nan/nan.h:1742:3: note: declared here [err] Call(int argc, v8::Local argv[]) const { [err] ^~~~ [err] ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE GetBaudRate(Nan::NAN_METHOD_ARGS_TYPE)’: [err] ../src/serialport.cpp:363:76: 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] [err] uv_queue_work(uv_default_loop(), req, EIO_GetBaudRate, (uv_after_work_cb)EIO_AfterGetBaudRate); [err] ^~~~~~~~ [err] ../src/serialport.cpp: In function ‘void EIO_AfterGetBaudRate(uv_work_t)’: [err] ../src/serialport.cpp:378:106: warning: ‘bool v8::Object::Set(v8::Local, v8::Local)’ is deprecated: Use maybe version [-Wdeprecated-declarations] [err] results->Set(Nan::New("baudRate").ToLocalChecked(), Nan::New(data->baudRate)); [err] ^ [err] In file included from /root/.cache/node-gyp/12.18.1/include/node/v8-internal.h:14, [err] from /root/.cache/node-gyp/12.18.1/include/node/v8.h:27, [err] from /root/.cache/node-gyp/12.18.1/include/node/node.h:67, [err] from ../../../../nan/nan.h:56, [err] from ../src/./serialport.h:6, [err] from ../src/serialport.cpp:1: [err] /root/.cache/node-gyp/12.18.1/include/node/v8.h:3499:22: note: declared here [err] bool Set(Local key, Local value)); [err] ^~~ [err] /root/.cache/node-gyp/12.18.1/include/node/v8config.h:328:3: note: in definition of macro ‘V8_DEPRECATED’ [err] declarator attribute((deprecated(message))) [err] ^~~~~~ [err] ../src/serialport.cpp:383:30: warning: ‘v8::Local Nan::Callback::Call(int, v8::Local) const’ is deprecated [-Wdeprecated-declarations] [err] data->callback.Call(2, argv); [err] ^ [err] In file included from ../src/./serialport.h:6, [err] from ../src/serialport.cpp:1: [err] ../../../../nan/nan.h:1742:3: note: declared here [err] Call(int argc, v8::Local argv[]) const { [err] ^~~~ [err] ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Drain(Nan::NAN_METHOD_ARGS_TYPE)’: [err] ../src/serialport.cpp:409:70: 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] [err] uv_queue_work(uv_default_loop(), req, EIO_Drain, (uv_after_work_cb)EIO_AfterDrain); [err] ^~~~~~ [err] ../src/serialport.cpp: In function ‘void EIO_AfterDrain(uv_work_t)’: [err] ../src/serialport.cpp:424:30: warning: ‘v8::Local Nan::Callback::Call(int, v8::Local*) const’ is deprecated [-Wdeprecated-declarations] [err] data->callback.Call(1, argv); [err] ^ [err] In file included from ../src/./serialport.h:6, [err] from ../src/serialport.cpp:1: [err] ../../../../nan/nan.h:1742:3: note: declared here [err] Call(int argc, v8::Local argv[]) const { [err] ^~~~ [err] ../src/serialport.cpp: At global scope: [err] ../src/serialport.cpp:430:28: warning: unnecessary parentheses in declaration of ‘ToParityEnum’ [-Wparentheses] [err] SerialPortParity NAN_INLINE(ToParityEnum(const v8::Local& v8str)) { [err] ^ [err] ../src/serialport.cpp:449:30: warning: unnecessary parentheses in declaration of ‘ToStopBitEnum’ [-Wparentheses] [err] SerialPortStopBits NAN_INLINE(ToStopBitEnum(double stopBits)) { [err] ^ [err] ../src/serialport.cpp:460:17: error: variable or field ‘init’ declared void [err] void init(v8::Handle target) { [err] ^~ [err] ../src/serialport.cpp:460:17: error: ‘Handle’ is not a member of ‘v8’ [err] ../src/serialport.cpp:460:34: error: expected primary-expression before ‘>’ token [err] void init(v8::Handle target) { [err] ^ [err] ../src/serialport.cpp:460:36: error: ‘target’ was not declared in this scope [err] void init(v8::Handle target) { [err] ^~ [err] ../src/serialport.cpp:460:36: note: suggested alternative: ‘tzset’ [err] void init(v8::Handle target) { [err] ^~ [err] tzset [err] In file included from ../../../../nan/nan.h:56, [err] from ../src/./serialport.h:6, [err] from ../src/serialport.cpp:1: [err] ../src/serialport.cpp:485:25: error: ‘init’ was not declared in this scope [err] NODE_MODULE(serialport, init); [err] ^~~~ [err] /root/.cache/node-gyp/12.18.1/include/node/node.h:608:36: note: in definition of macro ‘NODE_MODULE_X’ [err] (node::addon_register_func) (regfunc), \ [err] ^~~ [err] ../src/serialport.cpp:485:1: note: in expansion of macro ‘NODE_MODULE’ [err] NODE_MODULE(serialport, init); [err] ^~~ [err] ../src/serialport.cpp:485:25: note: suggested alternative: ‘int’ [err] NODE_MODULE(serialport, init); [err] ^~~~ [err] /root/.cache/node-gyp/12.18.1/include/node/node.h:608:36: note: in definition of macro ‘NODE_MODULE_X’ [err] (node::addon_register_func) (regfunc), \ [err] ^~~ [err] ../src/serialport.cpp:485:1: note: in expansion of macro ‘NODE_MODULE’ [err] NODE_MODULE(serialport, init); [err] ^~~ [err] make: *** [serialport.target.mk:112: Release/obj.target/serialport/src/serialport.o] Fehler 1 [out] make: Verzeichnis „/root/.node-red/node_modules/node-red-contrib-m-bus/node_modules/serialport/build“ wird verlassen [err] gyp [err] ERR! [err] build error [err] gyp [err] ERR! stack [err] Error: make failed with exit code: 2 [err] gyp [err] ERR! [err] stack at ChildProcess.onExit (/usr/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:194:23) [err] gyp [err] ERR! [err] stack at ChildProcess.emit (events.js:315:20) [err] gyp ERR! [err] stack at Process.ChildProcess._handle.onexit (internal/child_process.js:275:12) [err] gyp [err] ERR! System Linux 5.4.41-odroidxu4 [err] gyp [err] ERR! command "/usr/bin/node" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild" [err] gyp [err] ERR! cwd [err] /root/.node-red/node_modules/node-red-contrib-m-bus/node_modules/serialport [err] gyp [err] ERR! node -v [err] v12.18.1 [err] gyp [err] ERR! node-gyp -v v5.1.0 [err] gyp ERR! [err] not ok [err] npm [err] WARN node-red-contrib-ui-led@0.3.1 requires a peer of node-red-dashboard@2.14.x but none is installed. You must install peer dependencies yourself. [err] npm WARN node-red-project@0.0.1 No repository field. [err] npm WARN node-red-project@0.0.1 No license field. [err] [err] npm ERR! [err] code ELIFECYCLE [err] npm ERR! errno 1 [err] npm [err] ERR! serialport@6.2.1 install: prebuild-install || node-gyp rebuild [err] npm [err] ERR! Exit status 1 [err] npm ERR! [err]
[err] npm ERR! [err] Failed at the serialport@6.2.1 install script. [err] npm ERR! [err] This is probably not a problem with npm. There is likely additional logging output above. [err] [err] npm ERR! A complete log of this run can be found in: [err] npm ERR! /root/.npm/_logs/2020-06-29T05_06_02287Z-debug.log rc=1

2020-06-29T05_06_02_287Z-debug.log

robertsLando commented 4 years ago

@fromCologne COuld you try to run npm install node-red-contrib-m-bus from .node-red dir?

fromCologne commented 4 years ago

Same probleme to build serialport@6.2.1 from the sources.

_root@lora:~/.node-red# npm install node-red-contrib-m-bus

node-mbus@1.1.0 install /root/.node-red/node_modules/node-mbus node-gyp rebuild

make: Verzeichnis „/root/.node-red/node_modules/node-mbus/build“ wird betreten CC(target) Release/obj.target/libmbus/libmbus/mbus/mbus-protocol-aux.o CC(target) Release/obj.target/libmbus/libmbus/mbus/mbus-protocol.o CC(target) Release/obj.target/libmbus/libmbus/mbus/mbus-serial.o CC(target) Release/obj.target/libmbus/libmbus/mbus/mbus-tcp.o CC(target) Release/obj.target/libmbus/libmbus/mbus/mbus.o AR(target) Release/obj.target/mbus.a COPY Release/mbus.a CXX(target) Release/obj.target/mbus/src/main.o CXX(target) Release/obj.target/mbus/src/mbus-master.o CXX(target) Release/obj.target/mbus/src/util.o SOLINK_MODULE(target) Release/obj.target/mbus.node COPY Release/mbus.node make: Verzeichnis „/root/.node-red/node_modules/node-mbus/build“ wird verlassen

serialport@6.2.1 install /root/.node-red/node_modules/node-red-contrib-m-bus/node_modules/serialport prebuild-install || node-gyp rebuild

prebuild-install WARN install No prebuilt binaries found (target=12.18.1 runtime=node arch=arm platform=linux) make: Verzeichnis „/root/.node-red/node_modules/node-red-contrib-m-bus/node_modules/serialport/build“ wird betreten CXX(target) Release/obj.target/serialport/src/serialport.o In file included from ../src/./serialport.h:6, from ../src/serialport.cpp:1: ../../../../nan/nan.h: In function ‘void Nan::AsyncQueueWorker(Nan::AsyncWorker)’: ../../../../nan/nan.h:2294: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(AsyncExecuteComplete) ^ ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Open(Nan::NAN_METHOD_ARGS_TYPE)’: ../src/serialport.cpp:41:48: error: no matching function for call to ‘v8::Value::ToString()’ v8::String::Utf8Value path(info[0]->ToString()); ^ In file included from /root/.cache/node-gyp/12.18.1/include/node/node.h:67, from ../../../../nan/nan.h:56, from ../src/./serialport.h:6, from ../src/serialport.cpp:1: /root/.cache/node-gyp/12.18.1/include/node/v8.h:2668:44: note: candidate: ‘v8::MaybeLocal v8::Value::ToString(v8::Local) const’ V8_WARN_UNUSED_RESULT MaybeLocal ToString( ^~~~ /root/.cache/node-gyp/12.18.1/include/node/v8.h:2668:44: note: candidate expects 1 argument, 0 provided In file included from /root/.cache/node-gyp/12.18.1/include/node/v8-internal.h:14, from /root/.cache/node-gyp/12.18.1/include/node/v8.h:27, from /root/.cache/node-gyp/12.18.1/include/node/node.h:67, from ../../../../nan/nan.h:56, from ../src/./serialport.h:6, from ../src/serialport.cpp:1: /root/.cache/node-gyp/12.18.1/include/node/v8.h:2684:31: note: candidate: ‘v8::Local v8::Value::ToString(v8::Isolate) const’ Local ToString(Isolate isolate) const); ^~~~ /root/.cache/node-gyp/12.18.1/include/node/v8config.h:328:3: note: in definition of macro ‘V8_DEPRECATED’ declarator attribute((deprecated(message))) ^~~~~~ /root/.cache/node-gyp/12.18.1/include/node/v8.h:2684:31: note: candidate expects 1 argument, 0 provided Local ToString(Isolate isolate) const); ^~~~ /root/.cache/node-gyp/12.18.1/include/node/v8config.h:328:3: note: in definition of macro ‘V8_DEPRECATED’ declarator attribute((deprecated(message))) ^~~~~~ ../src/serialport.cpp:48:53: error: no matching function for call to ‘v8::Value::ToObject()’ v8::Local options = info[1]->ToObject(); ^ In file included from /root/.cache/node-gyp/12.18.1/include/node/node.h:67, from ../../../../nan/nan.h:56, from ../src/./serialport.h:6, from ../src/serialport.cpp:1: /root/.cache/node-gyp/12.18.1/include/node/v8.h:2672:44: note: candidate: ‘v8::MaybeLocal v8::Value::ToObject(v8::Local) const’ V8_WARN_UNUSED_RESULT MaybeLocal ToObject( ^~~~ /root/.cache/node-gyp/12.18.1/include/node/v8.h:2672:44: note: candidate expects 1 argument, 0 provided In file included from /root/.cache/node-gyp/12.18.1/include/node/v8-internal.h:14, from /root/.cache/node-gyp/12.18.1/include/node/v8.h:27, from /root/.cache/node-gyp/12.18.1/include/node/node.h:67, from ../../../../nan/nan.h:56, from ../src/./serialport.h:6, from ../src/serialport.cpp:1: /root/.cache/node-gyp/12.18.1/include/node/v8.h:2686:31: note: candidate: ‘v8::Local v8::Value::ToObject(v8::Isolate) const’ Local ToObject(Isolate isolate) const); ^~~~ /root/.cache/node-gyp/12.18.1/include/node/v8config.h:328:3: note: in definition of macro ‘V8_DEPRECATED’ declarator attribute((deprecated(message))) ^~~~~~ /root/.cache/node-gyp/12.18.1/include/node/v8.h:2686:31: note: candidate expects 1 argument, 0 provided Local ToObject(Isolate isolate) const); ^~~~ /root/.cache/node-gyp/12.18.1/include/node/v8config.h:328:3: note: in definition of macro ‘V8_DEPRECATED’ declarator attribute((deprecated(message))) ^~~~~~ ../src/serialport.cpp:78:69: 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] uv_queue_work(uv_default_loop(), req, EIO_Open, (uv_after_work_cb)EIO_AfterOpen); ^~~~~ ../src/serialport.cpp: In function ‘void EIO_AfterOpen(uv_work_t)’: ../src/serialport.cpp:95:30: warning: ‘v8::Local Nan::Callback::Call(int, v8::Local) const’ is deprecated [-Wdeprecated-declaration ] data->callback.Call(2, argv); ^ In file included from ../src/./serialport.h:6, from ../src/serialport.cpp:1: ../../../../nan/nan.h:1742:3: note: declared here Call(int argc, v8::Local argv[]) const { ^~~~ ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Update(Nan::NAN_METHOD_ARGS_TYPE)’: ../src/serialport.cpp:113:53: error: no matching function for call to ‘v8::Value::ToObject()’ v8::Local options = info[1]->ToObject(); ^ In file included from /root/.cache/node-gyp/12.18.1/include/node/node.h:67, from ../../../../nan/nan.h:56, from ../src/./serialport.h:6, from ../src/serialport.cpp:1: /root/.cache/node-gyp/12.18.1/include/node/v8.h:2672:44: note: candidate: ‘v8::MaybeLocal v8::Value::ToObject(v8::Local) const’ V8_WARN_UNUSED_RESULT MaybeLocal ToObject( ^~~~ /root/.cache/node-gyp/12.18.1/include/node/v8.h:2672:44: note: candidate expects 1 argument, 0 provided In file included from /root/.cache/node-gyp/12.18.1/include/node/v8-internal.h:14, from /root/.cache/node-gyp/12.18.1/include/node/v8.h:27, from /root/.cache/node-gyp/12.18.1/include/node/node.h:67, from ../../../../nan/nan.h:56, from ../src/./serialport.h:6, from ../src/serialport.cpp:1: /root/.cache/node-gyp/12.18.1/include/node/v8.h:2686:31: note: candidate: ‘v8::Local v8::Value::ToObject(v8::Isolate) const’ Local ToObject(Isolate isolate) const); ^~~~ /root/.cache/node-gyp/12.18.1/include/node/v8config.h:328:3: note: in definition of macro ‘V8_DEPRECATED’ declarator attribute((deprecated(message))) ^~~~~~ /root/.cache/node-gyp/12.18.1/include/node/v8.h:2686:31: note: candidate expects 1 argument, 0 provided Local ToObject(Isolate isolate) const); ^~~~ /root/.cache/node-gyp/12.18.1/include/node/v8config.h:328:3: note: in definition of macro ‘V8_DEPRECATED’ declarator attribute((deprecated(message))) ^~~~~~ ../src/serialport.cpp:135:71: 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] uv_queue_work(uv_default_loop(), req, EIO_Update, (uv_after_work_cb)EIO_AfterUpdate); ^~~~~~~ ../src/serialport.cpp: In function ‘void EIO_AfterUpdate(uv_work_t)’: ../src/serialport.cpp:150:30: warning: ‘v8::Local Nan::Callback::Call(int, v8::Local) const’ is deprecated [-Wdeprecated-declarations] data->callback.Call(1, argv); ^ In file included from ../src/./serialport.h:6, from ../src/serialport.cpp:1: ../../../../nan/nan.h:1742:3: note: declared here Call(int argc, v8::Local argv[]) const { ^~~~ ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Close(Nan::NAN_METHOD_ARGS_TYPE)’: ../src/serialport.cpp:175:70: 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] uv_queue_work(uv_default_loop(), req, EIO_Close, (uv_after_work_cb)EIO_AfterClose); ^~~~~~ ../src/serialport.cpp: In function ‘void EIO_AfterClose(uv_work_t)’: ../src/serialport.cpp:188:30: warning: ‘v8::Local Nan::Callback::Call(int, v8::Local) const’ is deprecated [-Wdeprecated-declarations] data->callback.Call(1, argv); ^ In file included from ../src/./serialport.h:6, from ../src/serialport.cpp:1: ../../../../nan/nan.h:1742:3: note: declared here Call(int argc, v8::Local argv[]) const { ^~~~ ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Flush(Nan::NAN_METHOD_ARGS_TYPE)’: ../src/serialport.cpp:215:70: 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] uv_queue_work(uv_default_loop(), req, EIO_Flush, (uv_after_work_cb)EIO_AfterFlush); ^~~~~~ ../src/serialport.cpp: In function ‘void EIO_AfterFlush(uv_work_t)’: ../src/serialport.cpp:231:30: warning: ‘v8::Local Nan::Callback::Call(int, v8::Local) const’ is deprecated [-Wdeprecated-declarations] data->callback.Call(1, argv); ^ In file included from ../src/./serialport.h:6, from ../src/serialport.cpp:1: ../../../../nan/nan.h:1742:3: note: declared here Call(int argc, v8::Local argv[]) const { ^~~~ ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Set(Nan::NAN_METHOD_ARGS_TYPE)’: ../src/serialport.cpp:250:53: error: no matching function for call to ‘v8::Value::ToObject()’ v8::Local options = info[1]->ToObject(); ^ In file included from /root/.cache/node-gyp/12.18.1/include/node/node.h:67, from ../../../../nan/nan.h:56, from ../src/./serialport.h:6, from ../src/serialport.cpp:1: /root/.cache/node-gyp/12.18.1/include/node/v8.h:2672:44: note: candidate: ‘v8::MaybeLocal v8::Value::ToObject(v8::Local) const’ V8_WARN_UNUSED_RESULT MaybeLocal ToObject( ^~~~ /root/.cache/node-gyp/12.18.1/include/node/v8.h:2672:44: note: candidate expects 1 argument, 0 provided In file included from /root/.cache/node-gyp/12.18.1/include/node/v8-internal.h:14, from /root/.cache/node-gyp/12.18.1/include/node/v8.h:27, from /root/.cache/node-gyp/12.18.1/include/node/node.h:67, from ../../../../nan/nan.h:56, from ../src/./serialport.h:6, from ../src/serialport.cpp:1: /root/.cache/node-gyp/12.18.1/include/node/v8.h:2686:31: note: candidate: ‘v8::Local v8::Value::ToObject(v8::Isolate) const’ Local ToObject(Isolate isolate) const); ^~~~ /root/.cache/node-gyp/12.18.1/include/node/v8config.h:328:3: note: in definition of macro ‘V8_DEPRECATED’ declarator attribute((deprecated(message))) ^~~~~~ /root/.cache/node-gyp/12.18.1/include/node/v8.h:2686:31: note: candidate expects 1 argument, 0 provided Local ToObject(Isolate isolate) const); ^~~~ /root/.cache/node-gyp/12.18.1/include/node/v8config.h:328:3: note: in definition of macro ‘V8_DEPRECATED’ declarator attribute((deprecated(message))) ^~~~~~ ../src/serialport.cpp:270:68: 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] uv_queue_work(uv_default_loop(), req, EIO_Set, (uv_after_work_cb)EIO_AfterSet); ^~~~ ../src/serialport.cpp: In function ‘void EIO_AfterSet(uv_work_t)’: ../src/serialport.cpp:285:30: warning: ‘v8::Local Nan::Callback::Call(int, v8::Local) const’ is deprecated [-Wdeprecated-declarations] data->callback.Call(1, argv); ^ In file included from ../src/./serialport.h:6, from ../src/serialport.cpp:1: ../../../../nan/nan.h:1742:3: note: declared here Call(int argc, v8::Local argv[]) const { ^~~~ ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Get(Nan::NAN_METHOD_ARGS_TYPE)’: ../src/serialport.cpp:314:68: 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] uv_queue_work(uv_default_loop(), req, EIO_Get, (uv_after_work_cb)EIO_AfterGet); ^~~~ ../src/serialport.cpp: In function ‘void EIO_AfterGet(uv_work_t)’: ../src/serialport.cpp:329:96: warning: ‘bool v8::Object::Set(v8::Local, v8::Local)’ is deprecated: Use maybe version [-Wdeprecated-declarations] results->Set(Nan::New("cts").ToLocalChecked(), Nan::New(data->cts)); ^ In file included from /root/.cache/node-gyp/12.18.1/include/node/v8-internal.h:14, from /root/.cache/node-gyp/12.18.1/include/node/v8.h:27, from /root/.cache/node-gyp/12.18.1/include/node/node.h:67, from ../../../../nan/nan.h:56, from ../src/./serialport.h:6, from ../src/serialport.cpp:1: /root/.cache/node-gyp/12.18.1/include/node/v8.h:3499:22: note: declared here bool Set(Local key, Local value)); ^~~ /root/.cache/node-gyp/12.18.1/include/node/v8config.h:328:3: note: in definition of macro ‘V8_DEPRECATED’ declarator attribute((deprecated(message))) ^~~~~~ ../src/serialport.cpp:330:96: warning: ‘bool v8::Object::Set(v8::Local, v8::Local)’ is deprecated: Use maybe version [-Wdeprecated-declarations] results->Set(Nan::New("dsr").ToLocalChecked(), Nan::New(data->dsr)); ^ In file included from /root/.cache/node-gyp/12.18.1/include/node/v8-internal.h:14, from /root/.cache/node-gyp/12.18.1/include/node/v8.h:27, from /root/.cache/node-gyp/12.18.1/include/node/node.h:67, from ../../../../nan/nan.h:56, from ../src/./serialport.h:6, from ../src/serialport.cpp:1: /root/.cache/node-gyp/12.18.1/include/node/v8.h:3499:22: note: declared here bool Set(Local key, Local value)); ^~~ /root/.cache/node-gyp/12.18.1/include/node/v8config.h:328:3: note: in definition of macro ‘V8_DEPRECATED’ declarator attribute((deprecated(message))) ^~~~~~ ../src/serialport.cpp:331:96: warning: ‘bool v8::Object::Set(v8::Local, v8::Local)’ is deprecated: Use maybe version [-Wdeprecated-declarations] results->Set(Nan::New("dcd").ToLocalChecked(), Nan::New(data->dcd)); ^ In file included from /root/.cache/node-gyp/12.18.1/include/node/v8-internal.h:14, from /root/.cache/node-gyp/12.18.1/include/node/v8.h:27, from /root/.cache/node-gyp/12.18.1/include/node/node.h:67, from ../../../../nan/nan.h:56, from ../src/./serialport.h:6, from ../src/serialport.cpp:1: /root/.cache/node-gyp/12.18.1/include/node/v8.h:3499:22: note: declared here bool Set(Local key, Local value)); ^~~ /root/.cache/node-gyp/12.18.1/include/node/v8config.h:328:3: note: in definition of macro ‘V8_DEPRECATED’ declarator attribute((deprecated(message))) ^~~~~~ ../src/serialport.cpp:336:30: warning: ‘v8::Local Nan::Callback::Call(int, v8::Local) const’ is deprecated [-Wdeprecated-declarations] data->callback.Call(2, argv); ^ In file included from ../src/./serialport.h:6, from ../src/serialport.cpp:1: ../../../../nan/nan.h:1742:3: note: declared here Call(int argc, v8::Local argv[]) const { ^~~~ ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE GetBaudRate(Nan::NAN_METHOD_ARGS_TYPE)’: ../src/serialport.cpp:363:76: 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] uv_queue_work(uv_default_loop(), req, EIO_GetBaudRate, (uv_after_work_cb)EIO_AfterGetBaudRate); ^~~~~~~~ ../src/serialport.cpp: In function ‘void EIO_AfterGetBaudRate(uv_work_t)’: ../src/serialport.cpp:378:106: warning: ‘bool v8::Object::Set(v8::Local, v8::Local)’ is deprecated: Use maybe version [-Wdeprecated-declarations] results->Set(Nan::New("baudRate").ToLocalChecked(), Nan::New(data->baudRate)); ^ In file included from /root/.cache/node-gyp/12.18.1/include/node/v8-internal.h:14, from /root/.cache/node-gyp/12.18.1/include/node/v8.h:27, from /root/.cache/node-gyp/12.18.1/include/node/node.h:67, from ../../../../nan/nan.h:56, from ../src/./serialport.h:6, from ../src/serialport.cpp:1: /root/.cache/node-gyp/12.18.1/include/node/v8.h:3499:22: note: declared here bool Set(Local key, Local value)); ^~~ /root/.cache/node-gyp/12.18.1/include/node/v8config.h:328:3: note: in definition of macro ‘V8_DEPRECATED’ declarator attribute((deprecated(message))) ^~~~~~ ../src/serialport.cpp:383:30: warning: ‘v8::Local Nan::Callback::Call(int, v8::Local) const’ is deprecated [-Wdeprecated-declarations] data->callback.Call(2, argv); ^ In file included from ../src/./serialport.h:6, from ../src/serialport.cpp:1: ../../../../nan/nan.h:1742:3: note: declared here Call(int argc, v8::Local argv[]) const { ^~~~ ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Drain(Nan::NAN_METHOD_ARGS_TYPE)’: ../src/serialport.cpp:409:70: 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] uv_queue_work(uv_default_loop(), req, EIO_Drain, (uv_after_work_cb)EIO_AfterDrain); ^~~~~~ ../src/serialport.cpp: In function ‘void EIO_AfterDrain(uv_work_t)’: ../src/serialport.cpp:424:30: warning: ‘v8::Local Nan::Callback::Call(int, v8::Local*) const’ is deprecated [-Wdeprecated-declarations] data->callback.Call(1, argv); ^ In file included from ../src/./serialport.h:6, from ../src/serialport.cpp:1: ../../../../nan/nan.h:1742:3: note: declared here Call(int argc, v8::Local argv[]) const { ^~~~ ../src/serialport.cpp: At global scope: ../src/serialport.cpp:430:28: warning: unnecessary parentheses in declaration of ‘ToParityEnum’ [-Wparentheses] SerialPortParity NAN_INLINE(ToParityEnum(const v8::Local& v8str)) { ^ ../src/serialport.cpp:449:30: warning: unnecessary parentheses in declaration of ‘ToStopBitEnum’ [-Wparentheses] SerialPortStopBits NAN_INLINE(ToStopBitEnum(double stopBits)) { ^ ../src/serialport.cpp:460:17: error: variable or field ‘init’ declared void void init(v8::Handle target) { ^~ ../src/serialport.cpp:460:17: error: ‘Handle’ is not a member of ‘v8’ ../src/serialport.cpp:460:34: error: expected primary-expression before ‘>’ token void init(v8::Handle target) { ^ ../src/serialport.cpp:460:36: error: ‘target’ was not declared in this scope void init(v8::Handle target) { ^~ ../src/serialport.cpp:460:36: note: suggested alternative: ‘tzset’ void init(v8::Handle target) { ^~ tzset In file included from ../../../../nan/nan.h:56, from ../src/./serialport.h:6, from ../src/serialport.cpp:1: ../src/serialport.cpp:485:25: error: ‘init’ was not declared in this scope NODE_MODULE(serialport, init); ^~~~ /root/.cache/node-gyp/12.18.1/include/node/node.h:608:36: note: in definition of macro ‘NODE_MODULE_X’ (node::addon_register_func) (regfunc), \ ^~~ ../src/serialport.cpp:485:1: note: in expansion of macro ‘NODE_MODULE’ NODE_MODULE(serialport, init); ^~~ ../src/serialport.cpp:485:25: note: suggested alternative: ‘int’ NODE_MODULE(serialport, init); ^~~~ /root/.cache/node-gyp/12.18.1/include/node/node.h:608:36: note: in definition of macro ‘NODE_MODULE_X’ (node::addon_register_func) (regfunc), \ ^~~ ../src/serialport.cpp:485:1: note: in expansion of macro ‘NODE_MODULE’ NODE_MODULE(serialport, init); ^~~ make: *** [serialport.target.mk:112: Release/obj.target/serialport/src/serialport.o] Fehler 1 make: Verzeichnis „/root/.node-red/node_modules/node-red-contrib-m-bus/node_modules/serialport/build“ wird verlassen 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:275:12) gyp ERR! System Linux 5.4.41-odroidxu4 gyp ERR! command "/usr/bin/node" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild" gyp ERR! cwd /root/.node-red/node_modules/node-red-contrib-m-bus/node_modules/serialport gyp ERR! node -v v12.18.1 gyp ERR! node-gyp -v v5.1.0 gyp ERR! not ok npm WARN node-red-project@0.0.1 No repository field. npm WARN node-red-project@0.0.1 No license field.

npm ERR! code ELIFECYCLE npm ERR! errno 1 npm ERR! serialport@6.2.1 install: prebuild-install || node-gyp rebuild npm ERR! Exit status 1 npm ERR! npm ERR! Failed at the serialport@6.2.1 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! /root/.npm/_logs/2020-07-03T03_41_16369Z-debug.log

fromCologne commented 4 years ago

I found a dirty workaround. npm install node-red-contrib-m-bus and interrupt if compiling of serialport@6.2.1 starts. Edit .node-red/node_modules/node-red-contrib-m-bus/package.json and change in the dependencies 6.2.1 => 9.0.0 sudo npm link And than I have two new nodes in my NodeRED.

duncanoswald commented 3 years ago

Hello both. I have the same problem but can't figure out how to interrupt the installation process (it's too fast). How do you do that? Also, there doesn't seem to be any reference to 6.2.1 in the package.json file.

robertsLando commented 3 years ago

I have just released version 2.0.0. Please try with that

duncanoswald commented 3 years ago

Installed like a dream, straight from node-red. Thank you so much!I’m using it to prepare for installing a heat pump, so you have made a contribution toward saving the world today. Cheers

robertsLando commented 3 years ago

@duncanoswald Glad to hear that! Consider supporting my work if you find it useful :smile:

duncanoswald commented 3 years ago
Cheers. Will do. Need to order an M-bus hat and do some tinkering to get it working first.Duncan Duncan OswaldFliskmillan FarmNewburghFife KY14 6HNt. 07720 295010 From: Daniel LandoSent: 30 July 2020 17:13To: robertsLando/node-red-contrib-m-busCc: duncanoswald; MentionSubject: Re: [robertsLando/node-red-contrib-m-bus] Install on NodeRED 1.0.4 error (#8) @duncanoswald Glad to hear that! Consider supporting my work if you find it useful 😄—You are receiving this because you were mentioned.Reply to this email directly, view it on GitHub, or unsubscribe.