Closed fromCologne closed 3 years ago
Could you show some more log output?
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~~~
[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~~~
[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~~~
[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
@fromCologne COuld you try to run npm install node-red-contrib-m-bus
from .node-red dir
?
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~~~
/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~~~
/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~~~
/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~~~
/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~~~
/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~~~
/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~~~
/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~~~
/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~~~
/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~~~~~
../src/serialport.cpp: In function ‘void EIO_AfterClose(uv_work_t)’:
../src/serialport.cpp:188:30: warning: ‘v8::Local~~~~~
../src/serialport.cpp: In function ‘void EIO_AfterFlush(uv_work_t)’:
../src/serialport.cpp:231:30: warning: ‘v8::Local~~~
/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~~~
/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~~~
/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~~~
../src/serialport.cpp: In function ‘void EIO_AfterGet(uv_work_t)’:
../src/serialport.cpp:329:96: warning: ‘bool v8::Object::Set(v8::Local~~~~~
../src/serialport.cpp:330:96: warning: ‘bool v8::Object::Set(v8::Local~~~~~
../src/serialport.cpp:331:96: warning: ‘bool v8::Object::Set(v8::Local~~~~~
../src/serialport.cpp:336:30: warning: ‘v8::Local~~~~~~~
../src/serialport.cpp: In function ‘void EIO_AfterGetBaudRate(uv_work_t)’:
../src/serialport.cpp:378:106: warning: ‘bool v8::Object::Set(v8::Local~~~~~
../src/serialport.cpp:383:30: warning: ‘v8::Local~~~~~
../src/serialport.cpp: In function ‘void EIO_AfterDrain(uv_work_t)’:
../src/serialport.cpp:424:30: warning: ‘v8::Local~
../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~
../src/serialport.cpp:460:36: note: suggested alternative: ‘tzset’
void init(v8::Handle~
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
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.
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.
I have just released version 2.0.0. Please try with that
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
@duncanoswald Glad to hear that! Consider supporting my work if you find it useful :smile:
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