You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
As the title suggest, I am trying to make this build on my raspberry pi, I tried with node v8, v11, v14 but always get stuck with node-gyp rebuild. The ftd driver seems to be installed and .h files linked okay, because I can use it with python for example, not sure what the issue is here, but I saw similar open and closed issues in here without a solution.
I am looking forward to fix this myself, but I'd appreciate a general advice or direction in which to go to find out what the issue is.
error:
root@DietPi:/home/sftpuser01/zrx/experiment/node_modules/ftdi# npm run postinstall
>[email protected] postinstall /home/sftpuser01/zrx/experiment/node_modules/ftdi
> node-gyp rebuild
make: Entering directory '/home/sftpuser01/zrx/experiment/node_modules/ftdi/build'
CXX(target) Release/obj.target/ftdi/src/ftdi_device.o
In file included from ../src/ftdi_device.cc:11:
../src/ftdi_device.h:74:28: error: ‘Handle’ has not been declared
74 | static void Initialize(Handle<Object> target);| ^~~~~~
../src/ftdi_device.h:74:34: error: expected ‘,’ or ‘...’ before ‘<’ token
74 | static void Initialize(Handle<Object> target);| ^
../src/ftdi_device.h: In function‘void AsyncQueueWorkerPersistent(Nan::AsyncWorker*)’:
../src/ftdi_device.h:123:7: warning: cast between incompatible functiontypes from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]
123 | , (uv_after_work_cb)AsyncExecuteCompletePersistent
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../src/ftdi_device.cc:12:
../src/ftdi_driver.h: At global scope:
../src/ftdi_driver.h:14:6: error: variable or field ‘InitializeList’ declared void
14 | void InitializeList(Handle<Object> target);| ^~~~~~~~~~~~~~
../src/ftdi_driver.h:14:21: error: ‘Handle’ was not declared in this scope
14 | void InitializeList(Handle<Object> target);| ^~~~~~
../src/ftdi_driver.h:14:34: error: expected primary-expression before ‘>’ token
14 | void InitializeList(Handle<Object> target);| ^
../src/ftdi_driver.h:14:36: error: ‘target’ was not declared in this scope
14 | void InitializeList(Handle<Object> target);| ^~~~~~
../src/ftdi_device.cc: In static member function‘static Nan::NAN_METHOD_RETURN_TYPE ftdi_device::FtdiDevice::New(Nan::NAN_METHOD_ARGS_TYPE)’:
../src/ftdi_device.cc:92:43: error: no matching functionfor call to ‘v8::Value::ToObject()’
92 | Local<Object> obj = info[0]->ToObject();
| ^
In file included from /root/.cache/node-gyp/14.20.0/include/node/node.h:67,
from /root/.cache/node-gyp/14.20.0/include/node/node_buffer.h:25,
from ../src/ftdi_device.cc:8:
/root/.cache/node-gyp/14.20.0/include/node/v8.h:2822:44: note: candidate: ‘v8::MaybeLocal<v8::Object> v8::Value::ToObject(v8::Local<v8::Context>) const’
2822 | V8_WARN_UNUSED_RESULT MaybeLocal<Object> ToObject(
| ^~~~~~~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:2822:44: note: candidate expects 1 argument, 0 provided
../src/ftdi_device.cc:102:27: error: no matching functionfor call to ‘v8::Object::Has(v8::Local<v8::String>&)’
102 | if(obj->Has(locationId) &&obj->Get(locationId)->Int32Value() != 0)
| ^
In file included from /root/.cache/node-gyp/14.20.0/include/node/node.h:67,
from /root/.cache/node-gyp/14.20.0/include/node/node_buffer.h:25,
from ../src/ftdi_device.cc:8:
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3752:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Has(v8::Local<v8::Context>, v8::Local<v8::Value>)’
3752 | V8_WARN_UNUSED_RESULT Maybe<bool> Has(Local<Context> context,
| ^~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3752:37: note: candidate expects 2 arguments, 1 provided
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3758:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Has(v8::Local<v8::Context>, uint32_t)’
3758 | V8_WARN_UNUSED_RESULT Maybe<bool> Has(Local<Context> context, uint32_t index);| ^~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3758:37: note: candidate expects 2 arguments, 1 provided
../src/ftdi_device.cc:102:51: error: no matching functionfor call to ‘v8::Object::Get(v8::Local<v8::String>&)’
102 | if(obj->Has(locationId) &&obj->Get(locationId)->Int32Value() != 0)
| ^
In file included from /root/.cache/node-gyp/14.20.0/include/node/node.h:67,
from /root/.cache/node-gyp/14.20.0/include/node/node_buffer.h:25,
from ../src/ftdi_device.cc:8:
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3717:43: note: candidate: ‘v8::MaybeLocal<v8::Value> v8::Object::Get(v8::Local<v8::Context>, v8::Local<v8::Value>)’
3717 | V8_WARN_UNUSED_RESULT MaybeLocal<Value> Get(Local<Context> context,
| ^~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3717:43: note: candidate expects 2 arguments, 1 provided
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3720:43: note: candidate: ‘v8::MaybeLocal<v8::Value> v8::Object::Get(v8::Local<v8::Context>, uint32_t)’
3720 | V8_WARN_UNUSED_RESULT MaybeLocal<Value> Get(Local<Context> context,
| ^~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3720:43: note: candidate expects 2 arguments, 1 provided
../src/ftdi_device.cc:104:60: error: no matching functionfor call to ‘v8::Object::Get(v8::Local<v8::String>&)’
104 | object->connectParams.connectId = obj->Get(locationId)->Int32Value();
| ^
In file included from /root/.cache/node-gyp/14.20.0/include/node/node.h:67,
from /root/.cache/node-gyp/14.20.0/include/node/node_buffer.h:25,
from ../src/ftdi_device.cc:8:
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3717:43: note: candidate: ‘v8::MaybeLocal<v8::Value> v8::Object::Get(v8::Local<v8::Context>, v8::Local<v8::Value>)’
3717 | V8_WARN_UNUSED_RESULT MaybeLocal<Value> Get(Local<Context> context,
| ^~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3717:43: note: candidate expects 2 arguments, 1 provided
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3720:43: note: candidate: ‘v8::MaybeLocal<v8::Value> v8::Object::Get(v8::Local<v8::Context>, uint32_t)’
3720 | V8_WARN_UNUSED_RESULT MaybeLocal<Value> Get(Local<Context> context,
| ^~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3720:43: note: candidate expects 2 arguments, 1 provided
../src/ftdi_device.cc:107:28: error: no matching functionfor call to ‘v8::Object::Has(v8::Local<v8::String>&)’
107 |else if(obj->Has(serial) &&obj->Get(serial)->ToString()->Length() > 0)
| ^
In file included from /root/.cache/node-gyp/14.20.0/include/node/node.h:67,
from /root/.cache/node-gyp/14.20.0/include/node/node_buffer.h:25,
from ../src/ftdi_device.cc:8:
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3752:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Has(v8::Local<v8::Context>, v8::Local<v8::Value>)’
3752 | V8_WARN_UNUSED_RESULT Maybe<bool> Has(Local<Context> context,
| ^~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3752:37: note: candidate expects 2 arguments, 1 provided
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3758:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Has(v8::Local<v8::Context>, uint32_t)’
3758 | V8_WARN_UNUSED_RESULT Maybe<bool> Has(Local<Context> context, uint32_t index);| ^~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3758:37: note: candidate expects 2 arguments, 1 provided
../src/ftdi_device.cc:107:48: error: no matching functionfor call to ‘v8::Object::Get(v8::Local<v8::String>&)’
107 |else if(obj->Has(serial) &&obj->Get(serial)->ToString()->Length() > 0)
| ^
In file included from /root/.cache/node-gyp/14.20.0/include/node/node.h:67,
from /root/.cache/node-gyp/14.20.0/include/node/node_buffer.h:25,
from ../src/ftdi_device.cc:8:
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3717:43: note: candidate: ‘v8::MaybeLocal<v8::Value> v8::Object::Get(v8::Local<v8::Context>, v8::Local<v8::Value>)’
3717 | V8_WARN_UNUSED_RESULT MaybeLocal<Value> Get(Local<Context> context,
| ^~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3717:43: note: candidate expects 2 arguments, 1 provided
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3720:43: note: candidate: ‘v8::MaybeLocal<v8::Value> v8::Object::Get(v8::Local<v8::Context>, uint32_t)’
3720 | V8_WARN_UNUSED_RESULT MaybeLocal<Value> Get(Local<Context> context,
| ^~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3720:43: note: candidate expects 2 arguments, 1 provided
../src/ftdi_device.cc:109:32: error: no matching functionfor call to ‘v8::Object::Get(v8::Local<v8::String>&)’
109 |ToCString(obj->Get(serial)->ToString(), &object->connectParams.connectString);| ^
In file included from /root/.cache/node-gyp/14.20.0/include/node/node.h:67,
from /root/.cache/node-gyp/14.20.0/include/node/node_buffer.h:25,
from ../src/ftdi_device.cc:8:
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3717:43: note: candidate: ‘v8::MaybeLocal<v8::Value> v8::Object::Get(v8::Local<v8::Context>, v8::Local<v8::Value>)’
3717 | V8_WARN_UNUSED_RESULT MaybeLocal<Value> Get(Local<Context> context,
| ^~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3717:43: note: candidate expects 2 arguments, 1 provided
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3720:43: note: candidate: ‘v8::MaybeLocal<v8::Value> v8::Object::Get(v8::Local<v8::Context>, uint32_t)’
3720 | V8_WARN_UNUSED_RESULT MaybeLocal<Value> Get(Local<Context> context,
| ^~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3720:43: note: candidate expects 2 arguments, 1 provided
../src/ftdi_device.cc:112:33: error: no matching functionfor call to ‘v8::Object::Has(v8::Local<v8::String>&)’
112 |else if(obj->Has(description) &&obj->Get(description)->ToString()->Length() > 0)
| ^
In file included from /root/.cache/node-gyp/14.20.0/include/node/node.h:67,
from /root/.cache/node-gyp/14.20.0/include/node/node_buffer.h:25,
from ../src/ftdi_device.cc:8:
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3752:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Has(v8::Local<v8::Context>, v8::Local<v8::Value>)’
3752 | V8_WARN_UNUSED_RESULT Maybe<bool> Has(Local<Context> context,
| ^~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3752:37: note: candidate expects 2 arguments, 1 provided
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3758:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Has(v8::Local<v8::Context>, uint32_t)’
3758 | V8_WARN_UNUSED_RESULT Maybe<bool> Has(Local<Context> context, uint32_t index);| ^~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3758:37: note: candidate expects 2 arguments, 1 provided
../src/ftdi_device.cc:112:58: error: no matching functionfor call to ‘v8::Object::Get(v8::Local<v8::String>&)’
112 |else if(obj->Has(description) &&obj->Get(description)->ToString()->Length() > 0)
| ^
In file included from /root/.cache/node-gyp/14.20.0/include/node/node.h:67,
from /root/.cache/node-gyp/14.20.0/include/node/node_buffer.h:25,
from ../src/ftdi_device.cc:8:
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3717:43: note: candidate: ‘v8::MaybeLocal<v8::Value> v8::Object::Get(v8::Local<v8::Context>, v8::Local<v8::Value>)’
3717 | V8_WARN_UNUSED_RESULT MaybeLocal<Value> Get(Local<Context> context,
| ^~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3717:43: note: candidate expects 2 arguments, 1 provided
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3720:43: note: candidate: ‘v8::MaybeLocal<v8::Value> v8::Object::Get(v8::Local<v8::Context>, uint32_t)’
3720 | V8_WARN_UNUSED_RESULT MaybeLocal<Value> Get(Local<Context> context,
| ^~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3720:43: note: candidate expects 2 arguments, 1 provided
../src/ftdi_device.cc:114:37: error: no matching functionfor call to ‘v8::Object::Get(v8::Local<v8::String>&)’
114 |ToCString(obj->Get(description)->ToString(), &object->connectParams.connectString);| ^
In file included from /root/.cache/node-gyp/14.20.0/include/node/node.h:67,
from /root/.cache/node-gyp/14.20.0/include/node/node_buffer.h:25,
from ../src/ftdi_device.cc:8:
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3717:43: note: candidate: ‘v8::MaybeLocal<v8::Value> v8::Object::Get(v8::Local<v8::Context>, v8::Local<v8::Value>)’
3717 | V8_WARN_UNUSED_RESULT MaybeLocal<Value> Get(Local<Context> context,
| ^~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3717:43: note: candidate expects 2 arguments, 1 provided
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3720:43: note: candidate: ‘v8::MaybeLocal<v8::Value> v8::Object::Get(v8::Local<v8::Context>, uint32_t)’
3720 | V8_WARN_UNUSED_RESULT MaybeLocal<Value> Get(Local<Context> context,
| ^~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3720:43: note: candidate expects 2 arguments, 1 provided
../src/ftdi_device.cc:117:27: error: no matching functionfor call to ‘v8::Object::Has(v8::Local<v8::String>&)’
117 |else if(obj->Has(index))
| ^
In file included from /root/.cache/node-gyp/14.20.0/include/node/node.h:67,
from /root/.cache/node-gyp/14.20.0/include/node/node_buffer.h:25,
from ../src/ftdi_device.cc:8:
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3752:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Has(v8::Local<v8::Context>, v8::Local<v8::Value>)’
3752 | V8_WARN_UNUSED_RESULT Maybe<bool> Has(Local<Context> context,
| ^~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3752:37: note: candidate expects 2 arguments, 1 provided
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3758:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Has(v8::Local<v8::Context>, uint32_t)’
3758 | V8_WARN_UNUSED_RESULT Maybe<bool> Has(Local<Context> context, uint32_t index);| ^~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3758:37: note: candidate expects 2 arguments, 1 provided
../src/ftdi_device.cc:119:55: error: no matching functionfor call to ‘v8::Object::Get(v8::Local<v8::String>&)’
119 | object->connectParams.connectId = obj->Get(index)->Int32Value();
| ^
In file included from /root/.cache/node-gyp/14.20.0/include/node/node.h:67,
from /root/.cache/node-gyp/14.20.0/include/node/node_buffer.h:25,
from ../src/ftdi_device.cc:8:
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3717:43: note: candidate: ‘v8::MaybeLocal<v8::Value> v8::Object::Get(v8::Local<v8::Context>, v8::Local<v8::Value>)’
3717 | V8_WARN_UNUSED_RESULT MaybeLocal<Value> Get(Local<Context> context,
| ^~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3717:43: note: candidate expects 2 arguments, 1 provided
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3720:43: note: candidate: ‘v8::MaybeLocal<v8::Value> v8::Object::Get(v8::Local<v8::Context>, uint32_t)’
3720 | V8_WARN_UNUSED_RESULT MaybeLocal<Value> Get(Local<Context> context,
| ^~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3720:43: note: candidate expects 2 arguments, 1 provided
../src/ftdi_device.cc:123:20: error: no matching functionfor call to ‘v8::Object::Has(v8::Local<v8::String>&)’
123 | if(obj->Has(vid))
| ^
In file included from /root/.cache/node-gyp/14.20.0/include/node/node.h:67,
from /root/.cache/node-gyp/14.20.0/include/node/node_buffer.h:25,
from ../src/ftdi_device.cc:8:
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3752:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Has(v8::Local<v8::Context>, v8::Local<v8::Value>)’
3752 | V8_WARN_UNUSED_RESULT Maybe<bool> Has(Local<Context> context,
| ^~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3752:37: note: candidate expects 2 arguments, 1 provided
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3758:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Has(v8::Local<v8::Context>, uint32_t)’
3758 | V8_WARN_UNUSED_RESULT Maybe<bool> Has(Local<Context> context, uint32_t index);| ^~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3758:37: note: candidate expects 2 arguments, 1 provided
../src/ftdi_device.cc:125:47: error: no matching functionfor call to ‘v8::Object::Get(v8::Local<v8::String>&)’
125 | object->connectParams.vid = obj->Get(vid)->Int32Value();
| ^
In file included from /root/.cache/node-gyp/14.20.0/include/node/node.h:67,
from /root/.cache/node-gyp/14.20.0/include/node/node_buffer.h:25,
from ../src/ftdi_device.cc:8:
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3717:43: note: candidate: ‘v8::MaybeLocal<v8::Value> v8::Object::Get(v8::Local<v8::Context>, v8::Local<v8::Value>)’
3717 | V8_WARN_UNUSED_RESULT MaybeLocal<Value> Get(Local<Context> context,
| ^~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3717:43: note: candidate expects 2 arguments, 1 provided
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3720:43: note: candidate: ‘v8::MaybeLocal<v8::Value> v8::Object::Get(v8::Local<v8::Context>, uint32_t)’
3720 | V8_WARN_UNUSED_RESULT MaybeLocal<Value> Get(Local<Context> context,
| ^~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3720:43: note: candidate expects 2 arguments, 1 provided
../src/ftdi_device.cc:128:20: error: no matching functionfor call to ‘v8::Object::Has(v8::Local<v8::String>&)’
128 | if(obj->Has(pid))
| ^
In file included from /root/.cache/node-gyp/14.20.0/include/node/node.h:67,
from /root/.cache/node-gyp/14.20.0/include/node/node_buffer.h:25,
from ../src/ftdi_device.cc:8:
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3752:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Has(v8::Local<v8::Context>, v8::Local<v8::Value>)’
3752 | V8_WARN_UNUSED_RESULT Maybe<bool> Has(Local<Context> context,
| ^~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3752:37: note: candidate expects 2 arguments, 1 provided
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3758:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Has(v8::Local<v8::Context>, uint32_t)’
3758 | V8_WARN_UNUSED_RESULT Maybe<bool> Has(Local<Context> context, uint32_t index);| ^~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3758:37: note: candidate expects 2 arguments, 1 provided
../src/ftdi_device.cc:130:47: error: no matching functionfor call to ‘v8::Object::Get(v8::Local<v8::String>&)’
130 | object->connectParams.pid = obj->Get(pid)->Int32Value();
| ^
In file included from /root/.cache/node-gyp/14.20.0/include/node/node.h:67,
from /root/.cache/node-gyp/14.20.0/include/node/node_buffer.h:25,
from ../src/ftdi_device.cc:8:
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3717:43: note: candidate: ‘v8::MaybeLocal<v8::Value> v8::Object::Get(v8::Local<v8::Context>, v8::Local<v8::Value>)’
3717 | V8_WARN_UNUSED_RESULT MaybeLocal<Value> Get(Local<Context> context,
| ^~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3717:43: note: candidate expects 2 arguments, 1 provided
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3720:43: note: candidate: ‘v8::MaybeLocal<v8::Value> v8::Object::Get(v8::Local<v8::Context>, uint32_t)’
3720 | V8_WARN_UNUSED_RESULT MaybeLocal<Value> Get(Local<Context> context,
| ^~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3720:43: note: candidate expects 2 arguments, 1 provided
../src/ftdi_device.cc:136:66: error: no matching functionfor call to ‘v8::Value::NumberValue()’
136 | object->connectParams.connectId = (int) info[0]->NumberValue();
| ^
In file included from /root/.cache/node-gyp/14.20.0/include/node/node.h:67,
from /root/.cache/node-gyp/14.20.0/include/node/node_buffer.h:25,
from ../src/ftdi_device.cc:8:
/root/.cache/node-gyp/14.20.0/include/node/v8.h:2861:39: note: candidate: ‘v8::Maybe<double> v8::Value::NumberValue(v8::Local<v8::Context>) const’
2861 | V8_WARN_UNUSED_RESULT Maybe<double> NumberValue(Local<Context> context) const;| ^~~~~~~~~~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:2861:39: note: candidate expects 1 argument, 0 provided
../src/ftdi_device.cc: In member function‘virtual void ReadWorker::HandleOKCallback()’:
../src/ftdi_device.cc:191:123: error: no matching functionfor call to ‘v8::Object::Get(v8::Local<v8::String>)’
191 | Local<Function> bufferConstructor = Local<Function>::Cast(globalObj->Get(Nan::New<String>("Buffer").ToLocalChecked()));
| ^
In file included from /root/.cache/node-gyp/14.20.0/include/node/node.h:67,
from /root/.cache/node-gyp/14.20.0/include/node/node_buffer.h:25,
from ../src/ftdi_device.cc:8:
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3717:43: note: candidate: ‘v8::MaybeLocal<v8::Value> v8::Object::Get(v8::Local<v8::Context>, v8::Local<v8::Value>)’
3717 | V8_WARN_UNUSED_RESULT MaybeLocal<Value> Get(Local<Context> context,
| ^~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3717:43: note: candidate expects 2 arguments, 1 provided
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3720:43: note: candidate: ‘v8::MaybeLocal<v8::Value> v8::Object::Get(v8::Local<v8::Context>, uint32_t)’
3720 | V8_WARN_UNUSED_RESULT MaybeLocal<Value> Get(Local<Context> context,
| ^~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3720:43: note: candidate expects 2 arguments, 1 provided
../src/ftdi_device.cc:192:7: error: ‘Handle’ was not declared in this scope
192 | Handle<Value> constructorArgs[3] = { slowBuffer, Nan::New<Number>(baton->length), Nan::New<Number>(0) };| ^~~~~~
../src/ftdi_device.cc:192:19: error: expected primary-expression before ‘>’ token
192 | Handle<Value> constructorArgs[3] = { slowBuffer, Nan::New<Number>(baton->length), Nan::New<Number>(0) };| ^
../src/ftdi_device.cc:192:21: error: ‘constructorArgs’ was not declared in this scope
192 | Handle<Value> constructorArgs[3] = { slowBuffer, Nan::New<Number>(baton->length), Nan::New<Number>(0) };| ^~~~~~~~~~~~~~~
../src/ftdi_device.cc:205:29: warning: ‘v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const’ is deprecated [-Wdeprecated-declarations]
205 | callback->Call(2, argv);| ^
In file included from ../src/ftdi_device.h:9,
from ../src/ftdi_device.cc:11:
../../nan/nan.h:1746:3: note: declared here
1746 | Call(int argc, v8::Local<v8::Value> argv[]) const {
| ^~~~
../src/ftdi_device.cc: In member function‘virtual void OpenWorker::HandleOKCallback()’:
../src/ftdi_device.cc:344:29: warning: ‘v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const’ is deprecated [-Wdeprecated-declarations]
344 | callback->Call(1, argv);| ^
In file included from ../src/ftdi_device.h:9,
from ../src/ftdi_device.cc:11:
../../nan/nan.h:1746:3: note: declared here
1746 | Call(int argc, v8::Local<v8::Value> argv[]) const {
| ^~~~
../src/ftdi_device.cc: In static member function‘static Nan::NAN_METHOD_RETURN_TYPE ftdi_device::FtdiDevice::Open(Nan::NAN_METHOD_ARGS_TYPE)’:
../src/ftdi_device.cc:398:27: warning: ‘v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const’ is deprecated [-Wdeprecated-declarations]
398 | callback->Call(1, argv);| ^
In file included from ../src/ftdi_device.h:9,
from ../src/ftdi_device.cc:11:
../../nan/nan.h:1746:3: note: declared here
1746 | Call(int argc, v8::Local<v8::Value> argv[]) const {
| ^~~~
../src/ftdi_device.cc:405:53: error: no matching functionfor call to ‘v8::Value::ToObject()’
405 |device->ExtractDeviceSettings(info[0]->ToObject());
| ^
In file included from /root/.cache/node-gyp/14.20.0/include/node/node.h:67,
from /root/.cache/node-gyp/14.20.0/include/node/node_buffer.h:25,
from ../src/ftdi_device.cc:8:
/root/.cache/node-gyp/14.20.0/include/node/v8.h:2822:44: note: candidate: ‘v8::MaybeLocal<v8::Object> v8::Value::ToObject(v8::Local<v8::Context>) const’
2822 | V8_WARN_UNUSED_RESULT MaybeLocal<Object> ToObject(
| ^~~~~~~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:2822:44: note: candidate expects 1 argument, 0 provided
../src/ftdi_device.cc: In member function‘FT_STATUSftdi_device::FtdiDevice::OpenDevice()’:
../src/ftdi_device.cc:484:23: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
484 | arg = (PVOID) connectParams.connectId;| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../src/ftdi_device.cc: In member function‘virtual void WriteWorker::HandleOKCallback()’:
../src/ftdi_device.cc:552:29: warning: ‘v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const’ is deprecated [-Wdeprecated-declarations]
552 | callback->Call(1, argv);| ^
In file included from ../src/ftdi_device.h:9,
from ../src/ftdi_device.cc:11:
../../nan/nan.h:1746:3: note: declared here
1746 | Call(int argc, v8::Local<v8::Value> argv[]) const {
| ^~~~
../src/ftdi_device.cc: In static member function‘static Nan::NAN_METHOD_RETURN_TYPE ftdi_device::FtdiDevice::Write(Nan::NAN_METHOD_ARGS_TYPE)’:
../src/ftdi_device.cc:575:44: error: no matching functionfor call to ‘v8::Value::ToObject()’
575 | Local<Object> buffer = info[0]->ToObject();
| ^
In file included from /root/.cache/node-gyp/14.20.0/include/node/node.h:67,
from /root/.cache/node-gyp/14.20.0/include/node/node_buffer.h:25,
from ../src/ftdi_device.cc:8:
/root/.cache/node-gyp/14.20.0/include/node/v8.h:2822:44: note: candidate: ‘v8::MaybeLocal<v8::Object> v8::Value::ToObject(v8::Local<v8::Context>) const’
2822 | V8_WARN_UNUSED_RESULT MaybeLocal<Object> ToObject(
| ^~~~~~~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:2822:44: note: candidate expects 1 argument, 0 provided
../src/ftdi_device.cc: In member function‘virtual void CloseWorker::HandleOKCallback()’:
../src/ftdi_device.cc:651:29: warning: ‘v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const’ is deprecated [-Wdeprecated-declarations]
651 | callback->Call(1, argv);| ^
In file included from ../src/ftdi_device.h:9,
from ../src/ftdi_device.cc:11:
../../nan/nan.h:1746:3: note: declared here
1746 | Call(int argc, v8::Local<v8::Value> argv[]) const {
| ^~~~
../src/ftdi_device.cc: In static member function‘static Nan::NAN_METHOD_RETURN_TYPE ftdi_device::FtdiDevice::Close(Nan::NAN_METHOD_ARGS_TYPE)’:
../src/ftdi_device.cc:681:29: warning: ‘v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const’ is deprecated [-Wdeprecated-declarations]
681 | callback->Call(1, argv);| ^
In file included from ../src/ftdi_device.h:9,
from ../src/ftdi_device.cc:11:
../../nan/nan.h:1746:3: note: declared here
1746 | Call(int argc, v8::Local<v8::Value> argv[]) const {
| ^~~~
../src/ftdi_device.cc: In member function‘void ftdi_device::FtdiDevice::ExtractDeviceSettings(v8::Local<v8::Object>)’:
../src/ftdi_device.cc:781:27: error: no matching functionfor call to ‘v8::Object::Has(v8::Local<v8::String>&)’
781 | if(options->Has(baudrate))
| ^
In file included from /root/.cache/node-gyp/14.20.0/include/node/node.h:67,
from /root/.cache/node-gyp/14.20.0/include/node/node_buffer.h:25,
from ../src/ftdi_device.cc:8:
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3752:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Has(v8::Local<v8::Context>, v8::Local<v8::Value>)’
3752 | V8_WARN_UNUSED_RESULT Maybe<bool> Has(Local<Context> context,
| ^~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3752:37: note: candidate expects 2 arguments, 1 provided
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3758:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Has(v8::Local<v8::Context>, uint32_t)’
3758 | V8_WARN_UNUSED_RESULT Maybe<bool> Has(Local<Context> context, uint32_t index);| ^~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3758:37: note: candidate expects 2 arguments, 1 provided
../src/ftdi_device.cc:783:50: error: no matching functionfor call to ‘v8::Object::Get(v8::Local<v8::String>&)’
783 | deviceParams.baudRate = options->Get(baudrate)->ToInt32()->Int32Value();
| ^
In file included from /root/.cache/node-gyp/14.20.0/include/node/node.h:67,
from /root/.cache/node-gyp/14.20.0/include/node/node_buffer.h:25,
from ../src/ftdi_device.cc:8:
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3717:43: note: candidate: ‘v8::MaybeLocal<v8::Value> v8::Object::Get(v8::Local<v8::Context>, v8::Local<v8::Value>)’
3717 | V8_WARN_UNUSED_RESULT MaybeLocal<Value> Get(Local<Context> context,
| ^~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3717:43: note: candidate expects 2 arguments, 1 provided
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3720:43: note: candidate: ‘v8::MaybeLocal<v8::Value> v8::Object::Get(v8::Local<v8::Context>, uint32_t)’
3720 | V8_WARN_UNUSED_RESULT MaybeLocal<Value> Get(Local<Context> context,
| ^~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3720:43: note: candidate expects 2 arguments, 1 provided
../src/ftdi_device.cc:785:27: error: no matching functionfor call to ‘v8::Object::Has(v8::Local<v8::String>&)’
785 | if(options->Has(databits))
| ^
In file included from /root/.cache/node-gyp/14.20.0/include/node/node.h:67,
from /root/.cache/node-gyp/14.20.0/include/node/node_buffer.h:25,
from ../src/ftdi_device.cc:8:
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3752:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Has(v8::Local<v8::Context>, v8::Local<v8::Value>)’
3752 | V8_WARN_UNUSED_RESULT Maybe<bool> Has(Local<Context> context,
| ^~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3752:37: note: candidate expects 2 arguments, 1 provided
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3758:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Has(v8::Local<v8::Context>, uint32_t)’
3758 | V8_WARN_UNUSED_RESULT Maybe<bool> Has(Local<Context> context, uint32_t index);| ^~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3758:37: note: candidate expects 2 arguments, 1 provided
../src/ftdi_device.cc:787:66: error: no matching functionfor call to ‘v8::Object::Get(v8::Local<v8::String>&)’
787 | deviceParams.wordLength = GetWordLength(options->Get(databits)->ToInt32()->Int32Value());
| ^
In file included from /root/.cache/node-gyp/14.20.0/include/node/node.h:67,
from /root/.cache/node-gyp/14.20.0/include/node/node_buffer.h:25,
from ../src/ftdi_device.cc:8:
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3717:43: note: candidate: ‘v8::MaybeLocal<v8::Value> v8::Object::Get(v8::Local<v8::Context>, v8::Local<v8::Value>)’
3717 | V8_WARN_UNUSED_RESULT MaybeLocal<Value> Get(Local<Context> context,
| ^~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3717:43: note: candidate expects 2 arguments, 1 provided
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3720:43: note: candidate: ‘v8::MaybeLocal<v8::Value> v8::Object::Get(v8::Local<v8::Context>, uint32_t)’
3720 | V8_WARN_UNUSED_RESULT MaybeLocal<Value> Get(Local<Context> context,
| ^~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3720:43: note: candidate expects 2 arguments, 1 provided
../src/ftdi_device.cc:789:27: error: no matching functionfor call to ‘v8::Object::Has(v8::Local<v8::String>&)’
789 | if(options->Has(stopbits))
| ^
In file included from /root/.cache/node-gyp/14.20.0/include/node/node.h:67,
from /root/.cache/node-gyp/14.20.0/include/node/node_buffer.h:25,
from ../src/ftdi_device.cc:8:
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3752:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Has(v8::Local<v8::Context>, v8::Local<v8::Value>)’
3752 | V8_WARN_UNUSED_RESULT Maybe<bool> Has(Local<Context> context,
| ^~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3752:37: note: candidate expects 2 arguments, 1 provided
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3758:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Has(v8::Local<v8::Context>, uint32_t)’
3758 | V8_WARN_UNUSED_RESULT Maybe<bool> Has(Local<Context> context, uint32_t index);| ^~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3758:37: note: candidate expects 2 arguments, 1 provided
../src/ftdi_device.cc:791:62: error: no matching functionfor call to ‘v8::Object::Get(v8::Local<v8::String>&)’
791 | deviceParams.stopBits = GetStopBits(options->Get(stopbits)->ToInt32()->Int32Value());
| ^
In file included from /root/.cache/node-gyp/14.20.0/include/node/node.h:67,
from /root/.cache/node-gyp/14.20.0/include/node/node_buffer.h:25,
from ../src/ftdi_device.cc:8:
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3717:43: note: candidate: ‘v8::MaybeLocal<v8::Value> v8::Object::Get(v8::Local<v8::Context>, v8::Local<v8::Value>)’
3717 | V8_WARN_UNUSED_RESULT MaybeLocal<Value> Get(Local<Context> context,
| ^~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3717:43: note: candidate expects 2 arguments, 1 provided
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3720:43: note: candidate: ‘v8::MaybeLocal<v8::Value> v8::Object::Get(v8::Local<v8::Context>, uint32_t)’
3720 | V8_WARN_UNUSED_RESULT MaybeLocal<Value> Get(Local<Context> context,
| ^~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3720:43: note: candidate expects 2 arguments, 1 provided
../src/ftdi_device.cc:793:25: error: no matching functionfor call to ‘v8::Object::Has(v8::Local<v8::String>&)’
793 | if(options->Has(parity))
| ^
In file included from /root/.cache/node-gyp/14.20.0/include/node/node.h:67,
from /root/.cache/node-gyp/14.20.0/include/node/node_buffer.h:25,
from ../src/ftdi_device.cc:8:
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3752:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Has(v8::Local<v8::Context>, v8::Local<v8::Value>)’
3752 | V8_WARN_UNUSED_RESULT Maybe<bool> Has(Local<Context> context,
| ^~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3752:37: note: candidate expects 2 arguments, 1 provided
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3758:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Has(v8::Local<v8::Context>, uint32_t)’
3758 | V8_WARN_UNUSED_RESULT Maybe<bool> Has(Local<Context> context, uint32_t index);| ^~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3758:37: note: candidate expects 2 arguments, 1 provided
../src/ftdi_device.cc:796:34: error: no matching functionfor call to ‘v8::Object::Get(v8::Local<v8::String>&)’
796 |ToCString(options->Get(parity)->ToString(), &str);| ^
In file included from /root/.cache/node-gyp/14.20.0/include/node/node.h:67,
from /root/.cache/node-gyp/14.20.0/include/node/node_buffer.h:25,
from ../src/ftdi_device.cc:8:
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3717:43: note: candidate: ‘v8::MaybeLocal<v8::Value> v8::Object::Get(v8::Local<v8::Context>, v8::Local<v8::Value>)’
3717 | V8_WARN_UNUSED_RESULT MaybeLocal<Value> Get(Local<Context> context,
| ^~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3717:43: note: candidate expects 2 arguments, 1 provided
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3720:43: note: candidate: ‘v8::MaybeLocal<v8::Value> v8::Object::Get(v8::Local<v8::Context>, uint32_t)’
3720 | V8_WARN_UNUSED_RESULT MaybeLocal<Value> Get(Local<Context> context,
| ^~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3720:43: note: candidate expects 2 arguments, 1 provided
../src/ftdi_device.cc:800:27: error: no matching functionfor call to ‘v8::Object::Has(v8::Local<v8::String>&)’
800 | if(options->Has(flowctrl))
| ^
In file included from /root/.cache/node-gyp/14.20.0/include/node/node.h:67,
from /root/.cache/node-gyp/14.20.0/include/node/node_buffer.h:25,
from ../src/ftdi_device.cc:8:
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3752:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Has(v8::Local<v8::Context>, v8::Local<v8::Value>)’
3752 | V8_WARN_UNUSED_RESULT Maybe<bool> Has(Local<Context> context,
| ^~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3752:37: note: candidate expects 2 arguments, 1 provided
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3758:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Has(v8::Local<v8::Context>, uint32_t)’
3758 | V8_WARN_UNUSED_RESULT Maybe<bool> Has(Local<Context> context, uint32_t index);| ^~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3758:37: note: candidate expects 2 arguments, 1 provided
../src/ftdi_device.cc:803:36: error: no matching functionfor call to ‘v8::Object::Get(v8::Local<v8::String>&)’
803 |ToCString(options->Get(flowctrl)->ToString(), &str);| ^
In file included from /root/.cache/node-gyp/14.20.0/include/node/node.h:67,
from /root/.cache/node-gyp/14.20.0/include/node/node_buffer.h:25,
from ../src/ftdi_device.cc:8:
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3717:43: note: candidate: ‘v8::MaybeLocal<v8::Value> v8::Object::Get(v8::Local<v8::Context>, v8::Local<v8::Value>)’
3717 | V8_WARN_UNUSED_RESULT MaybeLocal<Value> Get(Local<Context> context,
| ^~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3717:43: note: candidate expects 2 arguments, 1 provided
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3720:43: note: candidate: ‘v8::MaybeLocal<v8::Value> v8::Object::Get(v8::Local<v8::Context>, uint32_t)’
3720 | V8_WARN_UNUSED_RESULT MaybeLocal<Value> Get(Local<Context> context,
| ^~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3720:43: note: candidate expects 2 arguments, 1 provided
../src/ftdi_device.cc:812:26: error: no matching functionfor call to ‘v8::Object::Has(v8::Local<v8::String>&)’
812 | if(options->Has(bitmode))
| ^
In file included from /root/.cache/node-gyp/14.20.0/include/node/node.h:67,
from /root/.cache/node-gyp/14.20.0/include/node/node_buffer.h:25,
from ../src/ftdi_device.cc:8:
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3752:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Has(v8::Local<v8::Context>, v8::Local<v8::Value>)’
3752 | V8_WARN_UNUSED_RESULT Maybe<bool> Has(Local<Context> context,
| ^~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3752:37: note: candidate expects 2 arguments, 1 provided
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3758:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Has(v8::Local<v8::Context>, uint32_t)’
3758 | V8_WARN_UNUSED_RESULT Maybe<bool> Has(Local<Context> context, uint32_t index);| ^~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3758:37: note: candidate expects 2 arguments, 1 provided
../src/ftdi_device.cc:814:50: error: no matching functionfor call to ‘v8::Object::Get(v8::Local<v8::String>&)’
814 | deviceParams.bitMode = options->Get(bitmode)->ToInt32()->Int32Value();
| ^
In file included from /root/.cache/node-gyp/14.20.0/include/node/node.h:67,
from /root/.cache/node-gyp/14.20.0/include/node/node_buffer.h:25,
from ../src/ftdi_device.cc:8:
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3717:43: note: candidate: ‘v8::MaybeLocal<v8::Value> v8::Object::Get(v8::Local<v8::Context>, v8::Local<v8::Value>)’
3717 | V8_WARN_UNUSED_RESULT MaybeLocal<Value> Get(Local<Context> context,
| ^~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3717:43: note: candidate expects 2 arguments, 1 provided
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3720:43: note: candidate: ‘v8::MaybeLocal<v8::Value> v8::Object::Get(v8::Local<v8::Context>, uint32_t)’
3720 | V8_WARN_UNUSED_RESULT MaybeLocal<Value> Get(Local<Context> context,
| ^~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3720:43: note: candidate expects 2 arguments, 1 provided
../src/ftdi_device.cc:820:44: error: no matching functionfor call to ‘v8::Object::Has(v8::Local<v8::String>&)’
820 | if(hasBitSettings && options->Has(bitmask))
| ^
In file included from /root/.cache/node-gyp/14.20.0/include/node/node.h:67,
from /root/.cache/node-gyp/14.20.0/include/node/node_buffer.h:25,
from ../src/ftdi_device.cc:8:
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3752:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Has(v8::Local<v8::Context>, v8::Local<v8::Value>)’
3752 | V8_WARN_UNUSED_RESULT Maybe<bool> Has(Local<Context> context,
| ^~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3752:37: note: candidate expects 2 arguments, 1 provided
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3758:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Has(v8::Local<v8::Context>, uint32_t)’
3758 | V8_WARN_UNUSED_RESULT Maybe<bool> Has(Local<Context> context, uint32_t index);| ^~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3758:37: note: candidate expects 2 arguments, 1 provided
../src/ftdi_device.cc:822:50: error: no matching functionfor call to ‘v8::Object::Get(v8::Local<v8::String>&)’
822 | deviceParams.bitMask = options->Get(bitmask)->ToInt32()->Int32Value();
| ^
In file included from /root/.cache/node-gyp/14.20.0/include/node/node.h:67,
from /root/.cache/node-gyp/14.20.0/include/node/node_buffer.h:25,
from ../src/ftdi_device.cc:8:
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3717:43: note: candidate: ‘v8::MaybeLocal<v8::Value> v8::Object::Get(v8::Local<v8::Context>, v8::Local<v8::Value>)’
3717 | V8_WARN_UNUSED_RESULT MaybeLocal<Value> Get(Local<Context> context,
| ^~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3717:43: note: candidate expects 2 arguments, 1 provided
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3720:43: note: candidate: ‘v8::MaybeLocal<v8::Value> v8::Object::Get(v8::Local<v8::Context>, uint32_t)’
3720 | V8_WARN_UNUSED_RESULT MaybeLocal<Value> Get(Local<Context> context,
| ^~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3720:43: note: candidate expects 2 arguments, 1 provided
../src/ftdi_device.cc: In function‘void ToCString(v8::Local<v8::String>, char**)’:
../src/ftdi_device.cc:900:35: error: no matching functionfor call to ‘v8::String::Utf8Length()’
900 |*ptr = new char[val->Utf8Length() + 1];
| ^
In file included from /root/.cache/node-gyp/14.20.0/include/node/node.h:67,
from /root/.cache/node-gyp/14.20.0/include/node/node_buffer.h:25,
from ../src/ftdi_device.cc:8:
/root/.cache/node-gyp/14.20.0/include/node/v8.h:2977:7: note: candidate: ‘int v8::String::Utf8Length(v8::Isolate*) const’
2977 | int Utf8Length(Isolate* isolate) const;| ^~~~~~~~~~
/root/.cache/node-gyp/14.20.0/include/node/v8.h:2977:7: note: candidate expects 1 argument, 0 provided
../src/ftdi_device.cc:903:21: error: cannot convert ‘uint8_t*’ {aka ‘unsigned char*’} to ‘v8::Isolate*’
903 | val->WriteOneByte(reinterpret_cast<uint8_t*>(*ptr), 0, -1, 0);| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
||| uint8_t* {aka unsigned char*}
In file included from /root/.cache/node-gyp/14.20.0/include/node/node.h:67,
from /root/.cache/node-gyp/14.20.0/include/node/node_buffer.h:25,
from ../src/ftdi_device.cc:8:
/root/.cache/node-gyp/14.20.0/include/node/v8.h:3034:29: note: initializing argument 1 of ‘int v8::String::WriteOneByte(v8::Isolate*, uint8_t*, int, int, int) const’
3034 | int WriteOneByte(Isolate* isolate, uint8_t* buffer, int start = 0,
|~~~~~~~~~^~~~~~~
../src/ftdi_device.cc: At global scope:
../src/ftdi_device.cc:989:6: error: variable or field ‘Initialize’ declared void
989 | void FtdiDevice::Initialize(v8::Handle<v8::Object> target)
| ^~~~~~~~~~
../src/ftdi_device.cc:989:33: error: ‘Handle’ is not a member of ‘v8’; did you mean ‘JobHandle’?
989 | void FtdiDevice::Initialize(v8::Handle<v8::Object> target)
| ^~~~~~
| JobHandle
../src/ftdi_device.cc:989:50: error: expected primary-expression before ‘>’ token
989 | void FtdiDevice::Initialize(v8::Handle<v8::Object> target)
| ^
../src/ftdi_device.cc:989:52: error: ‘target’ was not declared in this scope
989 | void FtdiDevice::Initialize(v8::Handle<v8::Object> target)
| ^~~~~~
../src/ftdi_device.cc:1006:8: error: variable or field ‘init’ declared void
1006 | void init (v8::Handle<v8::Object> target)
| ^~~~
../src/ftdi_device.cc:1006:18: error: ‘Handle’ is not a member of ‘v8’; did you mean ‘JobHandle’?
1006 | void init (v8::Handle<v8::Object> target)
| ^~~~~~
| JobHandle
../src/ftdi_device.cc:1006:35: error: expected primary-expression before ‘>’ token
1006 | void init (v8::Handle<v8::Object> target)
| ^
../src/ftdi_device.cc:1006:37: error: ‘target’ was not declared in this scope
1006 | void init (v8::Handle<v8::Object> target)
| ^~~~~~
In file included from /root/.cache/node-gyp/14.20.0/include/node/node_buffer.h:25,
from ../src/ftdi_device.cc:8:
../src/ftdi_device.cc:1014:19: error: ‘init’ was not declared in this scope; did you mean ‘int’?
1014 | NODE_MODULE(ftdi, init)
| ^~~~
/root/.cache/node-gyp/14.20.0/include/node/node.h:793:36: note: in definition of macro ‘NODE_MODULE_X’
793 | (node::addon_register_func) (regfunc), \
| ^~~~~~~
../src/ftdi_device.cc:1014:1: note: in expansion of macro ‘NODE_MODULE’
1014 | NODE_MODULE(ftdi, init)
| ^~~~~~~~~~~
make: *** [ftdi.target.mk:116: Release/obj.target/ftdi/src/ftdi_device.o] Error 1
make: Leaving directory '/home/sftpuser01/zrx/experiment/node_modules/ftdi/build'
gyp ERR! build error
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack at ChildProcess.onExit (/root/.nvm/versions/node/v14.20.0/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:194:23)
gyp ERR! stack at ChildProcess.emit (events.js:400:28)
gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:285:12)
gyp ERR! System Linux 5.15.32-v8+
gyp ERR!command"/root/.nvm/versions/node/v14.20.0/bin/node""/root/.nvm/versions/node/v14.20.0/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js""rebuild"
gyp ERR! cwd /home/sftpuser01/zrx/experiment/node_modules/ftdi
gyp ERR! node -v v14.20.0
gyp ERR! node-gyp -v v5.1.0
gyp ERR! not ok
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR![email protected] postinstall: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the [email protected] postinstall script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm WARN Local package.json exists, but node_modules missing, did you mean to install?
npm ERR! A complete log of this run can be found in:
npm ERR! /root/.npm/_logs/2022-07-28T08_47_29_530Z-debug.log
The text was updated successfully, but these errors were encountered:
Someone mentioned he did not have v8 (I guess this refers to the js engine, not node.js version 8 specifically) and I see lines like v8.h:3720:43 which makes me think that I maybe need to install v8 separately to make the build, but I can't find anything else related to this.
When trying with NodeJS v8.17.0 I only get warnings, no errors anymore, but in the end now the following:
/usr/bin/ld: skipping incompatible /usr/local/lib/libftd2xx.so when searching for -lftd2xx
/usr/bin/ld: skipping incompatible /usr/local/lib/libftd2xx.a when searching for -lftd2xx
/usr/bin/ld: cannot find -lftd2xx
/usr/bin/ld: skipping incompatible /usr/local/lib/libftd2xx.so when searching for -lftd2xx
As the title suggest, I am trying to make this build on my raspberry pi, I tried with node v8, v11, v14 but always get stuck with
node-gyp rebuild
. The ftd driver seems to be installed and .h files linked okay, because I can use it with python for example, not sure what the issue is here, but I saw similar open and closed issues in here without a solution.I am looking forward to fix this myself, but I'd appreciate a general advice or direction in which to go to find out what the issue is.
error:
The text was updated successfully, but these errors were encountered: