kelly / node-i2c

Node.js native bindings for i2c-dev. Plays well with Raspberry Pi and Beaglebone.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

node-red-contrib-bmp085

liborp opened this issue · comments

During the install o node-red-contrib-bmp085 module I had a strange error. Have you any advice where the problem is?
Thank you in advance.
LP.

2 Apr 10:08:53 - [info] Installing module: node-red-contrib-bmp085
2 Apr 10:09:37 - [warn] Installation of module node-red-contrib-bmp085 failed:
2 Apr 10:09:37 - [warn] ------------------------------------------
2 Apr 10:09:37 - [warn] Error: Command failed: npm install --production node-red-contrib-bmp085
../src/i2c.cc: In function ‘void setAddress(int8_t)’:
../src/i2c.cc:21:28: error: ‘New’ is not a member of ‘v8::String’
Exception::TypeError(String::New("Failed to set address"))
^
../src/i2c.cc:22:5: error: ‘ThrowException’ was not declared in this scope
);
^
../src/i2c.cc: At global scope:
../src/i2c.cc:26:32: error: ‘Arguments’ does not name a type
Handle SetAddress(const Arguments& args) {
^
In file included from /home/pi/.node-gyp/7.7.1/include/node/node.h:42:0,
from ../src/i2c.cc:1:
/home/pi/.node-gyp/7.7.1/include/node/v8.h: In function ‘v8::Handlev8::Value SetAddress(const int&)’:
/home/pi/.node-gyp/7.7.1/include/node/v8.h:908:13: error: ‘v8::HandleScope::HandleScope()’ is protected
V8_INLINE HandleScope() {}
^
../src/i2c.cc:27:15: error: within this context
HandleScope scope;
^
../src/i2c.cc:29:16: error: invalid types ‘const int[int]’ for array subscript
addr = args[0]->Int32Value();
^
../src/i2c.cc:32:16: error: ‘class v8::HandleScope’ has no member named ‘Close’
return scope.Close(Undefined());
^
../src/i2c.cc:32:32: error: too few arguments to function ‘v8::Localv8::Primitive v8::Undefined(v8::Isolate*)’
return scope.Close(Undefined());
^
In file included from /home/pi/.node-gyp/7.7.1/include/node/node.h:42:0,
from ../src/i2c.cc:1:
/home/pi/.node-gyp/7.7.1/include/node/v8.h:327:27: note: declared here
friend Local Undefined(Isolate* isolate);
^
../src/i2c.cc: At global scope:
../src/i2c.cc:35:26: error: ‘Arguments’ does not name a type
Handle Scan(const Arguments& args) {
^
In file included from /home/pi/.node-gyp/7.7.1/include/node/node.h:42:0,
from ../src/i2c.cc:1:
/home/pi/.node-gyp/7.7.1/include/node/v8.h: In function ‘v8::Handlev8::Value Scan(const int&)’:
/home/pi/.node-gyp/7.7.1/include/node/v8.h:908:13: error: ‘v8::HandleScope::HandleScope()’ is protected
V8_INLINE HandleScope() {}
^
../src/i2c.cc:36:15: error: within this context
HandleScope scope;
^
../src/i2c.cc:39:58: error: invalid types ‘const int[int]’ for array subscript
Local callback = Local::Cast(args[0]);
^
../src/i2c.cc:40:38: error: invalid conversion from ‘int’ to ‘v8::Isolate*’ [-fpermissive]
Local results(Array::New(128));
^
In file included from /home/pi/.node-gyp/7.7.1/include/node/node.h:42:0,
from ../src/i2c.cc:1:
/home/pi/.node-gyp/7.7.1/include/node/v8.h:3354:23: note: initializing argument 1 of ‘static v8::Localv8::Array v8::Array::New(v8::Isolate*, int)’
static Local New(Isolate* isolate, int length = 0);
^
../src/i2c.cc:41:45: error: too few arguments to function ‘v8::Localv8::Primitive v8::Null(v8::Isolate*)’
Local err = Local::New(Null());
^
In file included from /home/pi/.node-gyp/7.7.1/include/node/node.h:42:0,
from ../src/i2c.cc:1:
/home/pi/.node-gyp/7.7.1/include/node/v8.h:328:27: note: declared here
friend Local Null(Isolate* isolate);
^
../src/i2c.cc:53:37: error: no matching function for call to ‘v8::Integer::New(int&)’
results->Set(i, Integer::New(res));
^
../src/i2c.cc:53:37: note: candidate is:
In file included from /home/pi/.node-gyp/7.7.1/include/node/node.h:42:0,
from ../src/i2c.cc:1:
/home/pi/.node-gyp/7.7.1/include/node/v8.h:2770:25: note: static v8::Localv8::Integer v8::Integer::New(v8::Isolate*, int32_t)
static Local New(Isolate* isolate, int32_t value);
^
/home/pi/.node-gyp/7.7.1/include/node/v8.h:2770:25: note: candidate expects 2 arguments, 1 provided
../src/i2c.cc:60:18: error: ‘GetCurrent’ is not a member of ‘v8::Context’
callback->Call(Context::GetCurrent()->Global(), argc, argv);
^
../src/i2c.cc:62:16: error: ‘class v8::HandleScope’ has no member named ‘Close’
return scope.Close(results);
^
../src/i2c.cc: At global scope:
../src/i2c.cc:65:27: error: ‘Arguments’ does not name a type
Handle Close(const Arguments& args) {
^
In file included from /home/pi/.node-gyp/7.7.1/include/node/node.h:42:0,
from ../src/i2c.cc:1:
/home/pi/.node-gyp/7.7.1/include/node/v8.h: In function ‘v8::Handlev8::Value Close(const int&)’:
/home/pi/.node-gyp/7.7.1/include/node/v8.h:908:13: error: ‘v8::HandleScope::HandleScope()’ is protected
V8_INLINE HandleScope() {}
^
../src/i2c.cc:66:15: error: within this context
HandleScope scope;
^
../src/i2c.cc:71:16: error: ‘class v8::HandleScope’ has no member named ‘Close’
return scope.Close(Undefined());
^
../src/i2c.cc:71:32: error: too few arguments to function ‘v8::Localv8::Primitive v8::Undefined(v8::Isolate*)’
return scope.Close(Undefined());
^
In file included from /home/pi/.node-gyp/7.7.1/include/node/node.h:42:0,
from ../src/i2c.cc:1:
/home/pi/.node-gyp/7.7.1/include/node/v8.h:327:27: note: declared here
friend Local Undefined(Isolate* isolate);
^
../src/i2c.cc: At global scope:
../src/i2c.cc:74:26: error: ‘Arguments’ does not name a type
Handle Open(const Arguments& args) {
^
In file included from /home/pi/.node-gyp/7.7.1/include/node/node.h:42:0,
from ../src/i2c.cc:1:
/home/pi/.node-gyp/7.7.1/include/node/v8.h: In function ‘v8::Handlev8::Value Open(const int&)’:
/home/pi/.node-gyp/7.7.1/include/node/v8.h:908:13: error: ‘v8::HandleScope::HandleScope()’ is protected
V8_INLINE HandleScope() {}
^
../src/i2c.cc:75:15: error: within this context
HandleScope scope;
^
../src/i2c.cc:77:34: error: invalid types ‘const int[int]’ for array subscript
String::Utf8Value device(args[0]);
^
../src/i2c.cc:79:45: error: too few arguments to function ‘v8::Localv8::Primitive v8::Null(v8::Isolate*)’
Local err = Local::New(Null());
^
In file included from /home/pi/.node-gyp/7.7.1/include/node/node.h:42:0,
from ../src/i2c.cc:1:
/home/pi/.node-gyp/7.7.1/include/node/v8.h:328:27: note: declared here
friend Local Null(Isolate* isolate);
^
../src/i2c.cc:83:28: error: ‘New’ is not a member of ‘v8::String’
err = Exception::Error(String::New("Failed to open I2C device"));
^
../src/i2c.cc:86:13: error: invalid types ‘const int[int]’ for array subscript
if (args[1]->IsFunction()) {
^
../src/i2c.cc:88:60: error: invalid types ‘const int[int]’ for array subscript
Local callback = Local::Cast(args[1]);
^
../src/i2c.cc:91:20: error: ‘GetCurrent’ is not a member of ‘v8::Context’
callback->Call(Context::GetCurrent()->Global(), argc, argv);
^
../src/i2c.cc:94:16: error: ‘class v8::HandleScope’ has no member named ‘Close’
return scope.Close(Undefined());
^
../src/i2c.cc:94:32: error: too few arguments to function ‘v8::Localv8::Primitive v8::Undefined(v8::Isolate*)’
return scope.Close(Undefined());
^
In file included from /home/pi/.node-gyp/7.7.1/include/node/node.h:42:0,
from ../src/i2c.cc:1:
/home/pi/.node-gyp/7.7.1/include/node/v8.h:327:27: note: declared here
friend Local Undefined(Isolate* isolate);
^
../src/i2c.cc: At global scope:
../src/i2c.cc:97:26: error: ‘Arguments’ does not name a type
Handle Read(const Arguments& args) {
^
In file included from /home/pi/.node-gyp/7.7.1/include/node/node.h:42:0,
from ../src/i2c.cc:1:
/home/pi/.node-gyp/7.7.1/include/node/v8.h: In function ‘v8::Handlev8::Value Read(const int&)’:
/home/pi/.node-gyp/7.7.1/include/node/v8.h:908:13: error: ‘v8::HandleScope::HandleScope()’ is protected
V8_INLINE HandleScope() {}
^
../src/i2c.cc:98:15: error: within this context
HandleScope scope;
^
../src/i2c.cc:100:19: error: invalid types ‘const int[int]’ for array subscript
int len = args[0]->Int32Value();
^
../src/i2c.cc:102:34: error: no matching function for call to ‘v8::Array::New()’
Local data = Array::New();
^
../src/i2c.cc:102:34: note: candidate is:
In file included from /home/pi/.node-gyp/7.7.1/include/node/node.h:42:0,
from ../src/i2c.cc:1:
/home/pi/.node-gyp/7.7.1/include/node/v8.h:3354:23: note: static v8::Localv8::Array v8::Array::New(v8::Isolate*, int)
static Local New(Isolate* isolate, int length = 0);
^
/home/pi/.node-gyp/7.7.1/include/node/v8.h:3354:23: note: candidate expects 2 arguments, 0 provided
../src/i2c.cc:105:45: error: too few arguments to function ‘v8::Localv8::Primitive v8::Null(v8::Isolate*)’
Local err = Local::New(Null());
^
In file included from /home/pi/.node-gyp/7.7.1/include/node/node.h:42:0,
from ../src/i2c.cc:1:
/home/pi/.node-gyp/7.7.1/include/node/v8.h:328:27: note: declared here
friend Local Null(Isolate* isolate);
^
../src/i2c.cc:108:28: error: ‘New’ is not a member of ‘v8::String’
err = Exception::Error(String::New("Cannot read from device"));
^
../src/i2c.cc:111:39: error: no matching function for call to ‘v8::Integer::New(char&)’
data->Set(i, Integer::New(buf[i]));
^
../src/i2c.cc:111:39: note: candidate is:
In file included from /home/pi/.node-gyp/7.7.1/include/node/node.h:42:0,
from ../src/i2c.cc:1:
/home/pi/.node-gyp/7.7.1/include/node/v8.h:2770:25: note: static v8::Localv8::Integer v8::Integer::New(v8::Isolate*, int32_t)
static Local New(Isolate* isolate, int32_t value);
^
/home/pi/.node-gyp/7.7.1/include/node/v8.h:2770:25: note: candidate expects 2 arguments, 1 provided
../src/i2c.cc:116:13: error: invalid types ‘const int[int]’ for array subscript
if (args[1]->IsFunction()) {
^
../src/i2c.cc:118:60: error: invalid types ‘const int[int]’ for array subscript
Local callback = Local::Cast(args[1]);
^
../src/i2c.cc:121:20: error: ‘GetCurrent’ is not a member of ‘v8::Context’
callback->Call(Context::GetCurrent()->Global(), argc, argv);
^
../src/i2c.cc:124:16: error: ‘class v8::HandleScope’ has no member named ‘Close’
return scope.Close(Undefined());
^
../src/i2c.cc:124:32: error: too few arguments to function ‘v8::Localv8::Primitive v8::Undefined(v8::Isolate*)’
return scope.Close(Undefined());
^
In file included from /home/pi/.node-gyp/7.7.1/include/node/node.h:42:0,
from ../src/i2c.cc:1:
/home/pi/.node-gyp/7.7.1/include/node/v8.h:327:27: note: declared here
friend Local Undefined(Isolate* isolate);
^
../src/i2c.cc: At global scope:
../src/i2c.cc:127:30: error: ‘Arguments’ does not name a type
Handle ReadByte(const Arguments& args) {
^
In file included from /home/pi/.node-gyp/7.7.1/include/node/node.h:42:0,
from ../src/i2c.cc:1:
/home/pi/.node-gyp/7.7.1/include/node/v8.h: In function ‘v8::Handlev8::Value ReadByte(const int&)’:
/home/pi/.node-gyp/7.7.1/include/node/v8.h:908:13: error: ‘v8::HandleScope::HandleScope()’ is protected
V8_INLINE HandleScope() {}
^
../src/i2c.cc:128:15: error: within this context
HandleScope scope;
^
../src/i2c.cc:131:45: error: too few arguments to function ‘v8::Localv8::Primitive v8::Null(v8::Isolate*)’
Local err = Local::New(Null());
^
In file included from /home/pi/.node-gyp/7.7.1/include/node/node.h:42:0,
from ../src/i2c.cc:1:
/home/pi/.node-gyp/7.7.1/include/node/v8.h:328:27: note: declared here
friend Local Null(Isolate* isolate);
^
../src/i2c.cc:136:28: error: ‘New’ is not a member of ‘v8::String’
err = Exception::Error(String::New("Cannot read device"));
^
../src/i2c.cc:138:28: error: no matching function for call to ‘v8::Integer::New(int32_t&)’
data = Integer::New(res);
^
../src/i2c.cc:138:28: note: candidate is:
In file included from /home/pi/.node-gyp/7.7.1/include/node/node.h:42:0,
from ../src/i2c.cc:1:
/home/pi/.node-gyp/7.7.1/include/node/v8.h:2770:25: note: static v8::Localv8::Integer v8::Integer::New(v8::Isolate*, int32_t)
static Local New(Isolate* isolate, int32_t value);
^
/home/pi/.node-gyp/7.7.1/include/node/v8.h:2770:25: note: candidate expects 2 arguments, 1 provided
../src/i2c.cc:141:13: error: invalid types ‘const int[int]’ for array subscript
if (args[0]->IsFunction()) {
^
../src/i2c.cc:143:60: error: invalid types ‘const int[int]’ for array subscript
Local callback = Local::Cast(args[0]);
^
../src/i2c.cc:146:20: error: ‘GetCurrent’ is not a member of ‘v8::Context’
callback->Call(Context::GetCurrent()->Global(), argc, argv);
^
../src/i2c.cc:148:16: error: ‘class v8::HandleScope’ has no member named ‘Close’
return scope.Close(data);
^
../src/i2c.cc: At global scope:
../src/i2c.cc:151:31: error: ‘Arguments’ does not name a type
Handle ReadBlock(const Arguments& args) {
^
In file included from /home/pi/.node-gyp/7.7.1/include/node/node.h:42:0,
from ../src/i2c.cc:1:
/home/pi/.node-gyp/7.7.1/include/node/v8.h: In function ‘v8::Handlev8::Value ReadBlock(const int&)’:
/home/pi/.node-gyp/7.7.1/include/node/v8.h:908:13: error: ‘v8::HandleScope::HandleScope()’ is protected
V8_INLINE HandleScope() {}
^
../src/i2c.cc:152:15: error: within this context
HandleScope scope;
^
../src/i2c.cc:154:22: error: invalid types ‘const int[int]’ for array subscript
int8_t cmd = args[0]->Int32Value();
^
../src/i2c.cc:155:23: error: invalid types ‘const int[int]’ for array subscript
int32_t len = args[1]->Int32Value();
^
../src/i2c.cc:157:45: error: too few arguments to function ‘v8::Localv8::Primitive v8::Null(v8::Isolate*)’
Local err = Local::New(Null());
^
In file included from /home/pi/.node-gyp/7.7.1/include/node/node.h:42:0,
from ../src/i2c.cc:1:
/home/pi/.node-gyp/7.7.1/include/node/v8.h:328:27: note: declared here
friend Local Null(Isolate* isolate);
^
../src/i2c.cc:158:16: error: expected primary-expression before ‘’ token
node::Buffer buffer = node::Buffer::New(len);
^
../src/i2c.cc:158:17: error: ‘buffer’ was not declared in this scope
node::Buffer buffer = node::Buffer::New(len);
^
../src/i2c.cc:158:48: error: no matching function for call to ‘New(int32_t&)’
node::Buffer buffer = node::Buffer::New(len);
^
../src/i2c.cc:158:48: note: candidates are:
In file included from ../src/i2c.cc:2:0:
/home/pi/.node-gyp/7.7.1/include/node/node_buffer.h:31:40: note: v8::MaybeLocalv8::Object node::Buffer::New(v8::Isolate
, size_t)
NODE_EXTERN v8::MaybeLocalv8::Object New(v8::Isolate
isolate, size_t length);
^
/home/pi/.node-gyp/7.7.1/include/node/node_buffer.h:31:40: note: candidate expects 2 arguments, 1 provided
/home/pi/.node-gyp/7.7.1/include/node/node_buffer.h:34:40: note: v8::MaybeLocalv8::Object node::Buffer::New(v8::Isolate
, v8::Localv8::String, node::encoding)
NODE_EXTERN v8::MaybeLocalv8::Object New(v8::Isolate
isolate,
^
/home/pi/.node-gyp/7.7.1/include/node/node_buffer.h:34:40: note: candidate expects 3 arguments, 1 provided
/home/pi/.node-gyp/7.7.1/include/node/node_buffer.h:39:40: note: v8::MaybeLocalv8::Object node::Buffer::New(v8::Isolate*, char*, size_t, node::Buffer::FreeCallback, void*)
NODE_EXTERN v8::MaybeLocalv8::Object New(v8::Isolate* isolate,
^
/home/pi/.node-gyp/7.7.1/include/node/node_buffer.h:39:40: note: candidate expects 5 arguments, 1 provided
/home/pi/.node-gyp/7.7.1/include/node/node_buffer.h:46:40: note: v8::MaybeLocalv8::Object node::Buffer::New(v8::Isolate*, char*, size_t)
NODE_EXTERN v8::MaybeLocalv8::Object New(v8::Isolate* isolate,
^
/home/pi/.node-gyp/7.7.1/include/node/node_buffer.h:46:40: note: candidate expects 3 arguments, 1 provided
../src/i2c.cc:160:29: error: ‘GetCurrent’ is not a member of ‘v8::Context’
Local globalObj = Context::GetCurrent()->Global();
^
../src/i2c.cc:161:76: error: ‘New’ is not a member of ‘v8::String’
Local bufferConstructor = Local::Cast(globalObj->Get(String::New("Buffer")));
^
../src/i2c.cc:162:77: error: no matching function for call to ‘v8::Integer::New(int32_t&)’
Handle constructorArgs[3] = { buffer->handle_, v8::Integer::New(len), v8::Integer::New(0) };
^
../src/i2c.cc:162:77: note: candidate is:
In file included from /home/pi/.node-gyp/7.7.1/include/node/node.h:42:0,
from ../src/i2c.cc:1:
/home/pi/.node-gyp/7.7.1/include/node/v8.h:2770:25: note: static v8::Localv8::Integer v8::Integer::New(v8::Isolate*, int32_t)
static Local New(Isolate* isolate, int32_t value);
^
/home/pi/.node-gyp/7.7.1/include/node/v8.h:2770:25: note: candidate expects 2 arguments, 1 provided
../src/i2c.cc:162:98: error: no matching function for call to ‘v8::Integer::New(int)’
Handle constructorArgs[3] = { buffer->handle_, v8::Integer::New(len), v8::Integer::New(0) };
^
../src/i2c.cc:162:98: note: candidate is:
In file included from /home/pi/.node-gyp/7.7.1/include/node/node.h:42:0,
from ../src/i2c.cc:1:
/home/pi/.node-gyp/7.7.1/include/node/v8.h:2770:25: note: static v8::Localv8::Integer v8::Integer::New(v8::Isolate*, int32_t)
static Local New(Isolate* isolate, int32_t value);
^
/home/pi/.node-gyp/7.7.1/include/node/v8.h:2770:25: note: candidate expects 2 arguments, 1 provided
../src/i2c.cc:163:81: warning: ‘v8::Localv8::Object v8::Function::NewInstance(int, v8::Localv8::Value) const’ is deprecated (declared at /home/pi/.node-gyp/7.7.1/include/node/v8.h:3657): Use maybe version [-Wdeprecated-declarations]
Local actualBuffer = bufferConstructor->NewInstance(3, constructorArgs);
^
../src/i2c.cc:167:30: error: ‘New’ is not a member of ‘v8::String’
err = Exception::Error(String::New("Error reading length of bytes"));
^
../src/i2c.cc:172:15: error: invalid types ‘const int[int]’ for array subscript
if (args[3]->IsFunction()) {
^
../src/i2c.cc:174:62: error: invalid types ‘const int[int]’ for array subscript
Local callback = Local::Cast(args[3]);
^
../src/i2c.cc:176:22: error: ‘GetCurrent’ is not a member of ‘v8::Context’
callback->Call(Context::GetCurrent()->Global(), argc, argv);
^
../src/i2c.cc:179:15: error: invalid types ‘const int[int]’ for array subscript
if (args[2]->IsNumber()) {
^
../src/i2c.cc:180:29: error: invalid types ‘const int[int]’ for array subscript
int32_t delay = args[2]->Int32Value();
^
../src/i2c.cc:186:16: error: ‘class v8::HandleScope’ has no member named ‘Close’
return scope.Close(actualBuffer);
^
../src/i2c.cc: At global scope:
../src/i2c.cc:189:27: error: ‘Arguments’ does not name a type
Handle Write(const Arguments& args) {
^
In file included from /home/pi/.node-gyp/7.7.1/include/node/node.h:42:0,
from ../src/i2c.cc:1:
/home/pi/.node-gyp/7.7.1/include/node/v8.h: In function ‘v8::Handlev8::Value Write(const int&)’:
/home/pi/.node-gyp/7.7.1/include/node/v8.h:908:13: error: ‘v8::HandleScope::HandleScope()’ is protected
V8_INLINE HandleScope() {}
^
../src/i2c.cc:190:15: error: within this context
HandleScope scope;
^
../src/i2c.cc:192:31: error: invalid types ‘const int[int]’ for array subscript
Local buffer = args[0];
^
../src/i2c.cc:197:45: error: too few arguments to function ‘v8::Localv8::Primitive v8::Null(v8::Isolate)’
Local err = Local::New(Null());
^
In file included from /home/pi/.node-gyp/7.7.1/include/node/node.h:42:0,
from ../src/i2c.cc:1:
/home/pi/.node-gyp/7.7.1/include/node/v8.h:328:27: note: declared here
friend Local Null(Isolate* isolate);
^
../src/i2c.cc:200:28: error: ‘New’ is not a member of ‘v8::String’
err = Exception::Error(String::New("Cannot write to device"));
^
../src/i2c.cc:203:13: error: invalid types ‘const int[int]’ for array subscript
if (args[1]->IsFunction()) {
^
../src/i2c.cc:205:60: error: invalid types ‘const int[int]’ for array subscript
Local callback = Local::Cast(args[1]);
^
../src/i2c.cc:208:20: error: ‘GetCurrent’ is not a member of ‘v8::Context’
callback->Call(Context::GetCurrent()->Global(), argc, argv);
^
../src/i2c.cc:211:16: error: ‘class v8::HandleScope’ has no member named ‘Close’
return scope.Close(Undefined());
^
../src/i2c.cc:211:32: error: too few arguments to function ‘v8::Localv8::Primitive v8::Undefined(v8::Isolate*)’
return scope.Close(Undefined());
^
In file included from /home/pi/.node-gyp/7.7.1/include/node/node.h:42:0,
from ../src/i2c.cc:1:
/home/pi/.node-gyp/7.7.1/include/node/v8.h:327:27: note: declared here
friend Local Undefined(Isolate* isolate);
^
../src/i2c.cc: At global scope:
../src/i2c.cc:214:31: error: ‘Arguments’ does not name a type
Handle WriteByte(const Arguments& args) {
^
In file included from /home/pi/.node-gyp/7.7.1/include/node/node.h:42:0,
from ../src/i2c.cc:1:
/home/pi/.node-gyp/7.7.1/include/node/v8.h: In function ‘v8::Handlev8::Value WriteByte(const int&)’:
/home/pi/.node-gyp/7.7.1/include/node/v8.h:908:13: error: ‘v8::HandleScope::HandleScope()’ is protected
V8_INLINE HandleScope() {}
^
../src/i2c.cc:215:15: error: within this context
HandleScope scope;
^
../src/i2c.cc:217:23: error: invalid types ‘const int[int]’ for array subscript
int8_t byte = args[0]->Int32Value();
^
../src/i2c.cc:218:45: error: too few arguments to function ‘v8::Localv8::Primitive v8::Null(v8::Isolate*)’
Local err = Local::New(Null());
^
In file included from /home/pi/.node-gyp/7.7.1/include/node/node.h:42:0,
from ../src/i2c.cc:1:
/home/pi/.node-gyp/7.7.1/include/node/v8.h:328:27: note: declared here
friend Local Null(Isolate* isolate);
^
../src/i2c.cc:221:28: error: ‘New’ is not a member of ‘v8::String’
err = Exception::Error(String::New("Cannot write to device"));
^
../src/i2c.cc:224:13: error: invalid types ‘const int[int]’ for array subscript
if (args[1]->IsFunction()) {
^
../src/i2c.cc:226:60: error: invalid types ‘const int[int]’ for array subscript
Local callback = Local::Cast(args[1]);
^
../src/i2c.cc:229:20: error: ‘GetCurrent’ is not a member of ‘v8::Context’
callback->Call(Context::GetCurrent()->Global(), argc, argv);
^
../src/i2c.cc:232:16: error: ‘class v8::HandleScope’ has no member named ‘Close’
return scope.Close(Undefined());
^
../src/i2c.cc:232:32: error: too few arguments to function ‘v8::Localv8::Primitive v8::Undefined(v8::Isolate*)’
return scope.Close(Undefined());
^
In file included from /home/pi/.node-gyp/7.7.1/include/node/node.h:42:0,
from ../src/i2c.cc:1:
/home/pi/.node-gyp/7.7.1/include/node/v8.h:327:27: note: declared here
friend Local Undefined(Isolate* isolate);
^
../src/i2c.cc: At global scope:
../src/i2c.cc:235:32: error: ‘Arguments’ does not name a type
Handle WriteBlock(const Arguments& args) {
^
In file included from /home/pi/.node-gyp/7.7.1/include/node/node.h:42:0,
from ../src/i2c.cc:1:
/home/pi/.node-gyp/7.7.1/include/node/v8.h: In function ‘v8::Handlev8::Value WriteBlock(const int&)’:
/home/pi/.node-gyp/7.7.1/include/node/v8.h:908:13: error: ‘v8::HandleScope::HandleScope()’ is protected
V8_INLINE HandleScope() {}
^
../src/i2c.cc:236:15: error: within this context
HandleScope scope;
^
../src/i2c.cc:238:31: error: invalid types ‘const int[int]’ for array subscript
Local buffer = args[1];
^
../src/i2c.cc:240:22: error: invalid types ‘const int[int]’ for array subscript
int8_t cmd = args[0]->Int32Value();
^
../src/i2c.cc:244:45: error: too few arguments to function ‘v8::Localv8::Primitive v8::Null(v8::Isolate*)’
Local err = Local::New(Null());
^
In file included from /home/pi/.node-gyp/7.7.1/include/node/node.h:42:0,
from ../src/i2c.cc:1:
/home/pi/.node-gyp/7.7.1/include/node/v8.h:328:27: note: declared here
friend Local Null(Isolate* isolate);
^
../src/i2c.cc:247:28: error: ‘New’ is not a member of ‘v8::String’
err = Exception::Error(String::New("Cannot write to device"));
^
../src/i2c.cc:250:13: error: invalid types ‘const int[int]’ for array subscript
if (args[2]->IsFunction()) {
^
../src/i2c.cc:252:60: error: invalid types ‘const int[int]’ for array subscript
Local callback = Local::Cast(args[2]);
^
../src/i2c.cc:255:20: error: ‘GetCurrent’ is not a member of ‘v8::Context’
callback->Call(Context::GetCurrent()->Global(), argc, argv);
^
../src/i2c.cc:258:16: error: ‘class v8::HandleScope’ has no member named ‘Close’
return scope.Close(Undefined());
^
../src/i2c.cc:258:32: error: too few arguments to function ‘v8::Localv8::Primitive v8::Undefined(v8::Isolate*)’
return scope.Close(Undefined());
^
In file included from /home/pi/.node-gyp/7.7.1/include/node/node.h:42:0,
from ../src/i2c.cc:1:
/home/pi/.node-gyp/7.7.1/include/node/v8.h:327:27: note: declared here
friend Local Undefined(Isolate* isolate);
^
../src/i2c.cc: At global scope:
../src/i2c.cc:261:31: error: ‘Arguments’ does not name a type
Handle WriteWord(const Arguments& args) {
^
In file included from /home/pi/.node-gyp/7.7.1/include/node/node.h:42:0,
from ../src/i2c.cc:1:
/home/pi/.node-gyp/7.7.1/include/node/v8.h: In function ‘v8::Handlev8::Value WriteWord(const int&)’:
/home/pi/.node-gyp/7.7.1/include/node/v8.h:908:13: error: ‘v8::HandleScope::HandleScope()’ is protected
V8_INLINE HandleScope() {}
^
../src/i2c.cc:262:15: error: within this context
HandleScope scope;
^
../src/i2c.cc:264:22: error: invalid types ‘const int[int]’ for array subscript
int8_t cmd = args[0]->Int32Value();
^
../src/i2c.cc:265:24: error: invalid types ‘const int[int]’ for array subscript
int16_t word = args[1]->Int32Value();
^
../src/i2c.cc:267:45: error: too few arguments to function ‘v8::Localv8::Primitive v8::Null(v8::Isolate*)’
Local err = Local::New(Null());
^
In file included from /home/pi/.node-gyp/7.7.1/include/node/node.h:42:0,
from ../src/i2c.cc:1:
/home/pi/.node-gyp/7.7.1/include/node/v8.h:328:27: note: declared here
friend Local Null(Isolate* isolate);
^
../src/i2c.cc:270:28: error: ‘New’ is not a member of ‘v8::String’
err = Exception::Error(String::New("Cannot write to device"));
^
../src/i2c.cc:273:13: error: invalid types ‘const int[int]’ for array subscript
if (args[2]->IsFunction()) {
^
../src/i2c.cc:275:60: error: invalid types ‘const int[int]’ for array subscript
Local callback = Local::Cast(args[2]);
^
../src/i2c.cc:278:20: error: ‘GetCurrent’ is not a member of ‘v8::Context’
callback->Call(Context::GetCurrent()->Global(), argc, argv);
^
../src/i2c.cc:281:16: error: ‘class v8::HandleScope’ has no member named ‘Close’
return scope.Close(Undefined());
^
../src/i2c.cc:281:32: error: too few arguments to function ‘v8::Localv8::Primitive v8::Undefined(v8::Isolate*)’
return scope.Close(Undefined());
^
In file included from /home/pi/.node-gyp/7.7.1/include/node/node.h:42:0,
from ../src/i2c.cc:1:
/home/pi/.node-gyp/7.7.1/include/node/v8.h:327:27: note: declared here
friend Local Undefined(Isolate* isolate);
^
../src/i2c.cc: In function ‘void Init(v8::Handlev8::Object)’:
../src/i2c.cc:285:15: error: ‘NewSymbol’ is not a member of ‘v8::String’
target->Set(String::NewSymbol("scan"),
^
../src/i2c.cc:286:31: error: no matching function for call to ‘v8::FunctionTemplate::New(v8::Handlev8::Value (&)(const int&))’
FunctionTemplate::New(Scan)->GetFunction());
^
../src/i2c.cc:286:31: note: candidate is:
In file included from /home/pi/.node-gyp/7.7.1/include/node/node.h:42:0,
from ../src/i2c.cc:1:
/home/pi/.node-gyp/7.7.1/include/node/v8.h:5078:34: note: static v8::Localv8::FunctionTemplate v8::FunctionTemplate::New(v8::Isolate*, v8::FunctionCallback, v8::Localv8::Value, v8::Localv8::Signature, int, v8::ConstructorBehavior)
static Local New(
^
/home/pi/.node-gyp/7.7.1/include/node/v8.h:5078:34: note: no known conversion for argument 1 from ‘v8::Handlev8::Value(const int&) {aka v8::Localv8::Value(const int&)}’ to ‘v8::Isolate*’
../src/i2c.cc:288:15: error: ‘NewSymbol’ is not a member of ‘v8::String’
target->Set(String::NewSymbol("setAddress"),
^
../src/i2c.cc:289:37: error: no matching function for call to ‘v8::FunctionTemplate::New(v8::Handlev8::Value (&)(const int&))’
FunctionTemplate::New(SetAddress)->GetFunction());
^
../src/i2c.cc:289:37: note: candidate is:
In file included from /home/pi/.node-gyp/7.7.1/include/node/node.h:42:0,
from ../src/i2c.cc:1:
/home/pi/.node-gyp/7.7.1/include/node/v8.h:5078:34: note: static v8::Localv8::FunctionTemplate v8::FunctionTemplate::New(v8::Isolate*, v8::FunctionCallback, v8::Localv8::Value, v8::Localv8::Signature, int, v8::ConstructorBehavior)
static Local New(
^
/home/pi/.node-gyp/7.7.1/include/node/v8.h:5078:34: note: no known conversion for argument 1 from ‘v8::Handlev8::Value(const int&) {aka v8::Localv8::Value(const int&)}’ to ‘v8::Isolate*’
../src/i2c.cc:291:15: error: ‘NewSymbol’ is not a member of ‘v8::String’
target->Set(String::NewSymbol("open"),
^
../src/i2c.cc:292:31: error: no matching function for call to ‘v8::FunctionTemplate::New(v8::Handlev8::Value (&)(const int&))’
FunctionTemplate::New(Open)->GetFunction());
^
../src/i2c.cc:292:31: note: candidate is:
In file included from /home/pi/.node-gyp/7.7.1/include/node/node.h:42:0,
from ../src/i2c.cc:1:
/home/pi/.node-gyp/7.7.1/include/node/v8.h:5078:34: note: static v8::Localv8::FunctionTemplate v8::FunctionTemplate::New(v8::Isolate*, v8::FunctionCallback, v8::Localv8::Value, v8::Localv8::Signature, int, v8::ConstructorBehavior)
static Local New(
^
/home/pi/.node-gyp/7.7.1/include/node/v8.h:5078:34: note: no known conversion for argument 1 from ‘v8::Handlev8::Value(const int&) {aka v8::Localv8::Value(const int&)}’ to ‘v8::Isolate*’
../src/i2c.cc:294:15: error: ‘NewSymbol’ is not a member of ‘v8::String’
target->Set(String::NewSymbol("close"),
^
../src/i2c.cc:295:32: error: no matching function for call to ‘v8::FunctionTemplate::New(v8::Handlev8::Value (&)(const int&))’
FunctionTemplate::New(Close)->GetFunction());
^
../src/i2c.cc:295:32: note: candidate is:
In file included from /home/pi/.node-gyp/7.7.1/include/node/node.h:42:0,
from ../src/i2c.cc:1:
/home/pi/.node-gyp/7.7.1/include/node/v8.h:5078:34: note: static v8::Localv8::FunctionTemplate v8::FunctionTemplate::New(v8::Isolate*, v8::FunctionCallback, v8::Localv8::Value, v8::Localv8::Signature, int, v8::ConstructorBehavior)
static Local New(
^
/home/pi/.node-gyp/7.7.1/include/node/v8.h:5078:34: note: no known conversion for argument 1 from ‘v8::Handlev8::Value(const int&) {aka v8::Localv8::Value(const int&)}’ to ‘v8::Isolate*’
../src/i2c.cc:297:15: error: ‘NewSymbol’ is not a member of ‘v8::String’
target->Set(String::NewSymbol("write"),
^
../src/i2c.cc:298:34: error: no matching function for call to ‘v8::FunctionTemplate::New(v8::Handlev8::Value (&)(const int&))’
FunctionTemplate::New(Write)->GetFunction());
^
../src/i2c.cc:298:34: note: candidate is:
In file included from /home/pi/.node-gyp/7.7.1/include/node/node.h:42:0,
from ../src/i2c.cc:1:
/home/pi/.node-gyp/7.7.1/include/node/v8.h:5078:34: note: static v8::Localv8::FunctionTemplate v8::FunctionTemplate::New(v8::Isolate*, v8::FunctionCallback, v8::Localv8::Value, v8::Localv8::Signature, int, v8::ConstructorBehavior)
static Local New(
^
/home/pi/.node-gyp/7.7.1/include/node/v8.h:5078:34: note: no known conversion for argument 1 from ‘v8::Handlev8::Value(const int&) {aka v8::Localv8::Value(const int&)}’ to ‘v8::Isolate*’
../src/i2c.cc:300:15: error: ‘NewSymbol’ is not a member of ‘v8::String’
target->Set(String::NewSymbol("writeByte"),
^
../src/i2c.cc:301:38: error: no matching function for call to ‘v8::FunctionTemplate::New(v8::Handlev8::Value (&)(const int&))’
FunctionTemplate::New(WriteByte)->GetFunction());
^
../src/i2c.cc:301:38: note: candidate is:
In file included from /home/pi/.node-gyp/7.7.1/include/node/node.h:42:0,
from ../src/i2c.cc:1:
/home/pi/.node-gyp/7.7.1/include/node/v8.h:5078:34: note: static v8::Localv8::FunctionTemplate v8::FunctionTemplate::New(v8::Isolate*, v8::FunctionCallback, v8::Localv8::Value, v8::Localv8::Signature, int, v8::ConstructorBehavior)
static Local New(
^
/home/pi/.node-gyp/7.7.1/include/node/v8.h:5078:34: note: no known conversion for argument 1 from ‘v8::Handlev8::Value(const int&) {aka v8::Localv8::Value(const int&)}’ to ‘v8::Isolate*’
../src/i2c.cc:303:15: error: ‘NewSymbol’ is not a member of ‘v8::String’
target->Set(String::NewSymbol("writeBlock"),
^
../src/i2c.cc:304:39: error: no matching function for call to ‘v8::FunctionTemplate::New(v8::Handlev8::Value (&)(const int&))’
FunctionTemplate::New(WriteBlock)->GetFunction());
^
../src/i2c.cc:304:39: note: candidate is:
In file included from /home/pi/.node-gyp/7.7.1/include/node/node.h:42:0,
from ../src/i2c.cc:1:
/home/pi/.node-gyp/7.7.1/include/node/v8.h:5078:34: note: static v8::Localv8::FunctionTemplate v8::FunctionTemplate::New(v8::Isolate*, v8::FunctionCallback, v8::Localv8::Value, v8::Localv8::Signature, int, v8::ConstructorBehavior)
static Local New(
^
/home/pi/.node-gyp/7.7.1/include/node/v8.h:5078:34: note: no known conversion for argument 1 from ‘v8::Handlev8::Value(const int&) {aka v8::Localv8::Value(const int&)}’ to ‘v8::Isolate*’
../src/i2c.cc:306:15: error: ‘NewSymbol’ is not a member of ‘v8::String’
target->Set(String::NewSymbol("read"),
^
../src/i2c.cc:307:31: error: no matching function for call to ‘v8::FunctionTemplate::New(v8::Handlev8::Value (&)(const int&))’
FunctionTemplate::New(Read)->GetFunction());
^
../src/i2c.cc:307:31: note: candidate is:
In file included from /home/pi/.node-gyp/7.7.1/include/node/node.h:42:0,
from ../src/i2c.cc:1:
/home/pi/.node-gyp/7.7.1/include/node/v8.h:5078:34: note: static v8::Localv8::FunctionTemplate v8::FunctionTemplate::New(v8::Isolate*, v8::FunctionCallback, v8::Localv8::Value, v8::Localv8::Signature, int, v8::ConstructorBehavior)
static Local New(
^
/home/pi/.node-gyp/7.7.1/include/node/v8.h:5078:34: note: no known conversion for argument 1 from ‘v8::Handlev8::Value(const int&) {aka v8::Localv8::Value(const int&)}’ to ‘v8::Isolate*’
../src/i2c.cc:309:15: error: ‘NewSymbol’ is not a member of ‘v8::String’
target->Set(String::NewSymbol("readByte"),
^
../src/i2c.cc:310:35: error: no matching function for call to ‘v8::FunctionTemplate::New(v8::Handlev8::Value (&)(const int&))’
FunctionTemplate::New(ReadByte)->GetFunction());
^
../src/i2c.cc:310:35: note: candidate is:
In file included from /home/pi/.node-gyp/7.7.1/include/node/node.h:42:0,
from ../src/i2c.cc:1:
/home/pi/.node-gyp/7.7.1/include/node/v8.h:5078:34: note: static v8::Localv8::FunctionTemplate v8::FunctionTemplate::New(v8::Isolate*, v8::FunctionCallback, v8::Localv8::Value, v8::Localv8::Signature, int, v8::ConstructorBehavior)
static Local New(
^
/home/pi/.node-gyp/7.7.1/include/node/v8.h:5078:34: note: no known conversion for argument 1 from ‘v8::Handlev8::Value(const int&) {aka v8::Localv8::Value(const int&)}’ to ‘v8::Isolate*’
../src/i2c.cc:312:15: error: ‘NewSymbol’ is not a member of ‘v8::String’
target->Set(String::NewSymbol("readBlock"),
^
../src/i2c.cc:313:36: error: no matching function for call to ‘v8::FunctionTemplate::New(v8::Handlev8::Value (&)(const int&))’
FunctionTemplate::New(ReadBlock)->GetFunction());
^
../src/i2c.cc:313:36: note: candidate is:
In file included from /home/pi/.node-gyp/7.7.1/include/node/node.h:42:0,
from ../src/i2c.cc:1:
/home/pi/.node-gyp/7.7.1/include/node/v8.h:5078:34: note: static v8::Localv8::FunctionTemplate v8::FunctionTemplate::New(v8::Isolate*, v8::FunctionCallback, v8::Localv8::Value, v8::Localv8::Signature, int, v8::ConstructorBehavior)
static Local New(
^
/home/pi/.node-gyp/7.7.1/include/node/v8.h:5078:34: note: no known conversion for argument 1 from ‘v8::Handlev8::Value(const int&) {aka v8::Localv8::Value(const int&)}’ to ‘v8::Isolate*’
../src/i2c.cc: In function ‘v8::Handlev8::Value SetAddress(const int&)’:
../src/i2c.cc:33:1: warning: control reaches end of non-void function [-Wreturn-type]
}
^
../src/i2c.cc: In function ‘v8::Handlev8::Value Scan(const int&)’:
../src/i2c.cc:63:1: warning: control reaches end of non-void function [-Wreturn-type]
}
^
../src/i2c.cc: In function ‘v8::Handlev8::Value Close(const int&)’:
../src/i2c.cc:72:1: warning: control reaches end of non-void function [-Wreturn-type]
}
^
../src/i2c.cc: In function ‘v8::Handlev8::Value Open(const int&)’:
../src/i2c.cc:95:1: warning: control reaches end of non-void function [-Wreturn-type]
}
^
../src/i2c.cc: In function ‘v8::Handlev8::Value Read(const int&)’:
../src/i2c.cc:125:1: warning: control reaches end of non-void function [-Wreturn-type]
}
^
../src/i2c.cc: In function ‘v8::Handlev8::Value ReadByte(const int&)’:
../src/i2c.cc:149:1: warning: control reaches end of non-void function [-Wreturn-type]
}
^
../src/i2c.cc: In function ‘v8::Handlev8::Value ReadBlock(const int&)’:
../src/i2c.cc:187:1: warning: control reaches end of non-void function [-Wreturn-type]
}
^
../src/i2c.cc: In function ‘v8::Handlev8::Value Write(const int&)’:
../src/i2c.cc:212:1: warning: control reaches end of non-void function [-Wreturn-type]
}
^
../src/i2c.cc: In function ‘v8::Handlev8::Value WriteByte(const int&)’:
../src/i2c.cc:233:1: warning: control reaches end of non-void function [-Wreturn-type]
}
^
../src/i2c.cc: In function ‘v8::Handlev8::Value WriteBlock(const int&)’:
../src/i2c.cc:259:1: warning: control reaches end of non-void function [-Wreturn-type]
}
^
../src/i2c.cc: In function ‘v8::Handlev8::Value WriteWord(const int&)’:
../src/i2c.cc:282:1: warning: control reaches end of non-void function [-Wreturn-type]
}
^
make: *** [Release/obj.target/i2c/src/i2c.o] Error 1
gyp ERR! build error
gyp ERR! stack Error: make failed with exit code: 2
gyp ERR! stack at ChildProcess.onExit (/opt/nodejs/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:276:23)
gyp ERR! stack at emitTwo (events.js:106:13)
gyp ERR! stack at ChildProcess.emit (events.js:194:7)
gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:215:12)
gyp ERR! System Linux 4.4.50+
gyp ERR! command "/opt/nodejs/bin/node" "/opt/nodejs/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"

commented

This package is most likely depending on an older version of i2c that isn't compatible with the newer node version.

commented

If you fork the package, you likely can update i2c to a newer version and it should work correctly.