jeremyfa / node-exec-sync

IMPORTANT: This repository is no longer maintained.
48 stars 26 forks source link

Error in «Release/obj.target/ffi_bindings/src/ffi.o» #24

Closed splincode closed 7 years ago

splincode commented 7 years ago
splincode@splincode-MS-7996:~/Develop/blackbox/test/server-side-api$ sudo npm install exec-sync --save-dev

> ffi@1.2.5 install /home/splincode/Develop/blackbox/test/server-side-api/node_modules/ffi
> node-gyp rebuild

make: вход в каталог «/home/splincode/Develop/blackbox/test/server-side-api/node_modules/ffi/build»
  CC(target) Release/obj.target/ffi/deps/libffi/src/prep_cif.o
  CC(target) Release/obj.target/ffi/deps/libffi/src/types.o
  CC(target) Release/obj.target/ffi/deps/libffi/src/raw_api.o
  CC(target) Release/obj.target/ffi/deps/libffi/src/java_raw_api.o
  CC(target) Release/obj.target/ffi/deps/libffi/src/closures.o
../deps/libffi/src/closures.c: In function ‘dlmmap_locked’:
../deps/libffi/src/closures.c:421:7: warning: ignoring return value of ‘ftruncate’, declared with attribute warn_unused_result [-Wunused-result]
       ftruncate (execfd, offset);
       ^
../deps/libffi/src/closures.c:433:7: warning: ignoring return value of ‘ftruncate’, declared with attribute warn_unused_result [-Wunused-result]
       ftruncate (execfd, offset);
       ^
  CC(target) Release/obj.target/ffi/deps/libffi/src/x86/ffi.o
  CC(target) Release/obj.target/ffi/deps/libffi/src/x86/ffi64.o
../deps/libffi/src/x86/ffi64.c: In function ‘classify_argument’:
../deps/libffi/src/x86/ffi64.c:181:18: warning: suggest braces around empty body in an ‘else’ statement [-Wempty-body]
    FFI_ASSERT (0);
                  ^
  CC(target) Release/obj.target/ffi/deps/libffi/src/x86/unix64.o
  CC(target) Release/obj.target/ffi/deps/libffi/src/x86/sysv.o
  AR(target) Release/obj.target/deps/libffi/libffi.a
  COPY Release/libffi.a
  CXX(target) Release/obj.target/ffi_bindings/src/ffi.o
In file included from ../src/ffi.cc:2:0:
../src/ffi.h:3:0: warning: "__STDC_LIMIT_MACROS" redefined
 #define __STDC_LIMIT_MACROS true
 ^
In file included from /home/splincode/.node-gyp/8.1.3/include/node/v8.h:19:0,
                 from /home/splincode/.node-gyp/8.1.3/include/node/node.h:63,
                 from /home/splincode/.node-gyp/8.1.3/include/node/node_buffer.h:25,
                 from ../src/ffi.cc:1:
/usr/lib/gcc/x86_64-linux-gnu/5/include/stdint.h:5:0: note: this is the location of the previous definition
 #  define __STDC_LIMIT_MACROS
 ^
In file included from ../src/ffi.cc:2:0:
../src/ffi.h:57:43: error: ‘Arguments’ does not name a type
     static Handle<Value> FFIPrepCif(const Arguments& args);
                                           ^
../src/ffi.h:58:46: error: ‘Arguments’ does not name a type
     static Handle<Value> FFIPrepCifVar(const Arguments& args);
                                              ^
../src/ffi.h:59:40: error: ‘Arguments’ does not name a type
     static Handle<Value> FFICall(const Arguments& args);
                                        ^
../src/ffi.h:60:45: error: ‘Arguments’ does not name a type
     static Handle<Value> FFICallAsync(const Arguments& args);
                                             ^
../src/ffi.h:64:40: error: ‘Arguments’ does not name a type
     static Handle<Value> Strtoul(const Arguments& args);
                                        ^
../src/ffi.h:94:41: error: ‘Arguments’ does not name a type
     static Handle<Value> Callback(const Arguments& args);
                                         ^
In file included from /home/splincode/.node-gyp/8.1.3/include/node/node.h:63:0,
                 from /home/splincode/.node-gyp/8.1.3/include/node/node_buffer.h:25,
                 from ../src/ffi.cc:1:
/home/splincode/.node-gyp/8.1.3/include/node/v8.h: In function ‘v8::Handle<v8::Value> WrapPointer(char*, size_t)’:
/home/splincode/.node-gyp/8.1.3/include/node/v8.h:846:13: error: ‘v8::HandleScope::HandleScope()’ is protected
   V8_INLINE HandleScope() {}
             ^
../src/ffi.cc:19:15: error: within this context
   HandleScope scope;
               ^
../src/ffi.cc:21:10: error: expected primary-expression before ‘*’ token
   Buffer *buf = Buffer::New(ptr, length, wrap_pointer_cb, user_data);
          ^
../src/ffi.cc:21:11: error: ‘buf’ was not declared in this scope
   Buffer *buf = Buffer::New(ptr, length, wrap_pointer_cb, user_data);
           ^
../src/ffi.cc:21:68: error: no matching function for call to ‘New(char*&, size_t&, void (&)(char*, void*), void*&)’
   Buffer *buf = Buffer::New(ptr, length, wrap_pointer_cb, user_data);
                                                                    ^
In file included from ../src/ffi.cc:1:0:
/home/splincode/.node-gyp/8.1.3/include/node/node_buffer.h:52:40: note: candidate: v8::MaybeLocal<v8::Object> node::Buffer::New(v8::Isolate*, size_t)
 NODE_EXTERN v8::MaybeLocal<v8::Object> New(v8::Isolate* isolate, size_t length);
                                        ^
/home/splincode/.node-gyp/8.1.3/include/node/node_buffer.h:52:40: note:   candidate expects 2 arguments, 4 provided
/home/splincode/.node-gyp/8.1.3/include/node/node_buffer.h:55:40: note: candidate: v8::MaybeLocal<v8::Object> node::Buffer::New(v8::Isolate*, v8::Local<v8::String>, node::encoding)
 NODE_EXTERN v8::MaybeLocal<v8::Object> New(v8::Isolate* isolate,
                                        ^
/home/splincode/.node-gyp/8.1.3/include/node/node_buffer.h:55:40: note:   candidate expects 3 arguments, 4 provided
/home/splincode/.node-gyp/8.1.3/include/node/node_buffer.h:60:40: note: candidate: v8::MaybeLocal<v8::Object> node::Buffer::New(v8::Isolate*, char*, size_t, node::Buffer::FreeCallback, void*)
 NODE_EXTERN v8::MaybeLocal<v8::Object> New(v8::Isolate* isolate,
                                        ^
/home/splincode/.node-gyp/8.1.3/include/node/node_buffer.h:60:40: note:   candidate expects 5 arguments, 4 provided
/home/splincode/.node-gyp/8.1.3/include/node/node_buffer.h:67:40: note: candidate: v8::MaybeLocal<v8::Object> node::Buffer::New(v8::Isolate*, char*, size_t)
 NODE_EXTERN v8::MaybeLocal<v8::Object> New(v8::Isolate* isolate,
                                        ^
/home/splincode/.node-gyp/8.1.3/include/node/node_buffer.h:67:40: note:   candidate expects 3 arguments, 4 provided
../src/ffi.cc:22:16: error: ‘class v8::HandleScope’ has no member named ‘Close’
   return scope.Close(buf->handle_);
                ^
../src/ffi.cc: In static member function ‘static void FFI::InitializeStaticFunctions(v8::Handle<v8::Object>)’:
../src/ffi.cc:28:33: error: no matching function for call to ‘v8::Object::New()’
   Local<Object> o = Object::New();
                                 ^
In file included from /home/splincode/.node-gyp/8.1.3/include/node/node.h:63:0,
                 from /home/splincode/.node-gyp/8.1.3/include/node/node_buffer.h:25,
                 from ../src/ffi.cc:1:
/home/splincode/.node-gyp/8.1.3/include/node/v8.h:3315:24: note: candidate: static v8::Local<v8::Object> v8::Object::New(v8::Isolate*)
   static Local<Object> New(Isolate* isolate);
                        ^
/home/splincode/.node-gyp/8.1.3/include/node/v8.h:3315:24: note:   candidate expects 1 argument, 0 provided
../src/ffi.cc:31:10: error: ‘NewSymbol’ is not a member of ‘v8::String’
   o->Set(String::NewSymbol("dlopen"),  WrapPointer((char *)dlopen));
          ^
../src/ffi.cc:32:10: error: ‘NewSymbol’ is not a member of ‘v8::String’
   o->Set(String::NewSymbol("dlclose"), WrapPointer((char *)dlclose));
          ^
../src/ffi.cc:33:10: error: ‘NewSymbol’ is not a member of ‘v8::String’
   o->Set(String::NewSymbol("dlsym"),   WrapPointer((char *)dlsym));
          ^
../src/ffi.cc:34:10: error: ‘NewSymbol’ is not a member of ‘v8::String’
   o->Set(String::NewSymbol("dlerror"), WrapPointer((char *)dlerror));
          ^
../src/ffi.cc:36:15: error: ‘NewSymbol’ is not a member of ‘v8::String’
   target->Set(String::NewSymbol("StaticFunctions"), o);
               ^
../src/ffi.cc: In static member function ‘static void FFI::InitializeBindings(v8::Handle<v8::Object>)’:
../src/ffi.cc:49:53: error: invalid conversion from ‘v8::Handle<v8::Value> (*)(const int&) {aka v8::Local<v8::Value> (*)(const int&)}’ to ‘v8::FunctionCallback {aka void (*)(const v8::FunctionCallbackInfo<v8::Value>&)}’ [-fpermissive]
   NODE_SET_METHOD(target, "ffi_prep_cif", FFIPrepCif);
                                                     ^
In file included from /home/splincode/.node-gyp/8.1.3/include/node/node_buffer.h:25:0,
                 from ../src/ffi.cc:1:
/home/splincode/.node-gyp/8.1.3/include/node/node.h:270:13: note:   initializing argument 3 of ‘void node::NODE_SET_METHOD(v8::Local<v8::Object>, const char*, v8::FunctionCallback)’
 inline void NODE_SET_METHOD(v8::Local<v8::Object> recv,
             ^
../src/ffi.cc:50:60: error: invalid conversion from ‘v8::Handle<v8::Value> (*)(const int&) {aka v8::Local<v8::Value> (*)(const int&)}’ to ‘v8::FunctionCallback {aka void (*)(const v8::FunctionCallbackInfo<v8::Value>&)}’ [-fpermissive]
   NODE_SET_METHOD(target, "ffi_prep_cif_var", FFIPrepCifVar);
                                                            ^
In file included from /home/splincode/.node-gyp/8.1.3/include/node/node_buffer.h:25:0,
                 from ../src/ffi.cc:1:
/home/splincode/.node-gyp/8.1.3/include/node/node.h:270:13: note:   initializing argument 3 of ‘void node::NODE_SET_METHOD(v8::Local<v8::Object>, const char*, v8::FunctionCallback)’
 inline void NODE_SET_METHOD(v8::Local<v8::Object> recv,
             ^
../src/ffi.cc:51:46: error: invalid conversion from ‘v8::Handle<v8::Value> (*)(const int&) {aka v8::Local<v8::Value> (*)(const int&)}’ to ‘v8::FunctionCallback {aka void (*)(const v8::FunctionCallbackInfo<v8::Value>&)}’ [-fpermissive]
   NODE_SET_METHOD(target, "ffi_call", FFICall);
                                              ^
In file included from /home/splincode/.node-gyp/8.1.3/include/node/node_buffer.h:25:0,
                 from ../src/ffi.cc:1:
/home/splincode/.node-gyp/8.1.3/include/node/node.h:270:13: note:   initializing argument 3 of ‘void node::NODE_SET_METHOD(v8::Local<v8::Object>, const char*, v8::FunctionCallback)’
 inline void NODE_SET_METHOD(v8::Local<v8::Object> recv,
             ^
../src/ffi.cc:52:57: error: invalid conversion from ‘v8::Handle<v8::Value> (*)(const int&) {aka v8::Local<v8::Value> (*)(const int&)}’ to ‘v8::FunctionCallback {aka void (*)(const v8::FunctionCallbackInfo<v8::Value>&)}’ [-fpermissive]
   NODE_SET_METHOD(target, "ffi_call_async", FFICallAsync);
                                                         ^
In file included from /home/splincode/.node-gyp/8.1.3/include/node/node_buffer.h:25:0,
                 from ../src/ffi.cc:1:
/home/splincode/.node-gyp/8.1.3/include/node/node.h:270:13: note:   initializing argument 3 of ‘void node::NODE_SET_METHOD(v8::Local<v8::Object>, const char*, v8::FunctionCallback)’
 inline void NODE_SET_METHOD(v8::Local<v8::Object> recv,
             ^
../src/ffi.cc:42:15: error: ‘NewSymbol’ is not a member of ‘v8::String’
   target->Set(String::NewSymbol(#_value), \
               ^
../src/ffi.cc:55:3: note: in expansion of macro ‘SET_ENUM_VALUE’
   SET_ENUM_VALUE(FFI_OK);
   ^
../src/ffi.cc:43:43: error: no matching function for call to ‘v8::Integer::New(ssize_t)’
               Integer::New((ssize_t)_value), \
                                           ^
../src/ffi.cc:55:3: note: in expansion of macro ‘SET_ENUM_VALUE’
   SET_ENUM_VALUE(FFI_OK);
   ^
In file included from /home/splincode/.node-gyp/8.1.3/include/node/node.h:63:0,
                 from /home/splincode/.node-gyp/8.1.3/include/node/node_buffer.h:25,
                 from ../src/ffi.cc:1:
/home/splincode/.node-gyp/8.1.3/include/node/v8.h:2764:25: note: candidate: static v8::Local<v8::Integer> v8::Integer::New(v8::Isolate*, int32_t)
   static Local<Integer> New(Isolate* isolate, int32_t value);
                         ^
/home/splincode/.node-gyp/8.1.3/include/node/v8.h:2764:25: note:   candidate expects 2 arguments, 1 provided
../src/ffi.cc:42:15: error: ‘NewSymbol’ is not a member of ‘v8::String’
   target->Set(String::NewSymbol(#_value), \
               ^
../src/ffi.cc:56:3: note: in expansion of macro ‘SET_ENUM_VALUE’
   SET_ENUM_VALUE(FFI_BAD_TYPEDEF);
   ^
../src/ffi.cc:43:43: error: no matching function for call to ‘v8::Integer::New(ssize_t)’
               Integer::New((ssize_t)_value), \
                                           ^
../src/ffi.cc:56:3: note: in expansion of macro ‘SET_ENUM_VALUE’
   SET_ENUM_VALUE(FFI_BAD_TYPEDEF);
   ^
In file included from /home/splincode/.node-gyp/8.1.3/include/node/node.h:63:0,
                 from /home/splincode/.node-gyp/8.1.3/include/node/node_buffer.h:25,
                 from ../src/ffi.cc:1:
/home/splincode/.node-gyp/8.1.3/include/node/v8.h:2764:25: note: candidate: static v8::Local<v8::Integer> v8::Integer::New(v8::Isolate*, int32_t)
   static Local<Integer> New(Isolate* isolate, int32_t value);
                         ^
/home/splincode/.node-gyp/8.1.3/include/node/v8.h:2764:25: note:   candidate expects 2 arguments, 1 provided
../src/ffi.cc:42:15: error: ‘NewSymbol’ is not a member of ‘v8::String’
   target->Set(String::NewSymbol(#_value), \
               ^
../src/ffi.cc:57:3: note: in expansion of macro ‘SET_ENUM_VALUE’
   SET_ENUM_VALUE(FFI_BAD_ABI);
   ^
../src/ffi.cc:43:43: error: no matching function for call to ‘v8::Integer::New(ssize_t)’
               Integer::New((ssize_t)_value), \
                                           ^
../src/ffi.cc:57:3: note: in expansion of macro ‘SET_ENUM_VALUE’
   SET_ENUM_VALUE(FFI_BAD_ABI);
   ^
In file included from /home/splincode/.node-gyp/8.1.3/include/node/node.h:63:0,
                 from /home/splincode/.node-gyp/8.1.3/include/node/node_buffer.h:25,
                 from ../src/ffi.cc:1:
/home/splincode/.node-gyp/8.1.3/include/node/v8.h:2764:25: note: candidate: static v8::Local<v8::Integer> v8::Integer::New(v8::Isolate*, int32_t)
   static Local<Integer> New(Isolate* isolate, int32_t value);
                         ^
/home/splincode/.node-gyp/8.1.3/include/node/v8.h:2764:25: note:   candidate expects 2 arguments, 1 provided
../src/ffi.cc:42:15: error: ‘NewSymbol’ is not a member of ‘v8::String’
   target->Set(String::NewSymbol(#_value), \
               ^
../src/ffi.cc:60:3: note: in expansion of macro ‘SET_ENUM_VALUE’
   SET_ENUM_VALUE(FFI_DEFAULT_ABI);
   ^
../src/ffi.cc:43:43: error: no matching function for call to ‘v8::Integer::New(ssize_t)’
               Integer::New((ssize_t)_value), \
                                           ^
../src/ffi.cc:60:3: note: in expansion of macro ‘SET_ENUM_VALUE’
   SET_ENUM_VALUE(FFI_DEFAULT_ABI);
   ^
In file included from /home/splincode/.node-gyp/8.1.3/include/node/node.h:63:0,
                 from /home/splincode/.node-gyp/8.1.3/include/node/node_buffer.h:25,
                 from ../src/ffi.cc:1:
/home/splincode/.node-gyp/8.1.3/include/node/v8.h:2764:25: note: candidate: static v8::Local<v8::Integer> v8::Integer::New(v8::Isolate*, int32_t)
   static Local<Integer> New(Isolate* isolate, int32_t value);
                         ^
/home/splincode/.node-gyp/8.1.3/include/node/v8.h:2764:25: note:   candidate expects 2 arguments, 1 provided
../src/ffi.cc:42:15: error: ‘NewSymbol’ is not a member of ‘v8::String’
   target->Set(String::NewSymbol(#_value), \
               ^
../src/ffi.cc:61:3: note: in expansion of macro ‘SET_ENUM_VALUE’
   SET_ENUM_VALUE(FFI_FIRST_ABI);
   ^
../src/ffi.cc:43:43: error: no matching function for call to ‘v8::Integer::New(ssize_t)’
               Integer::New((ssize_t)_value), \
                                           ^
../src/ffi.cc:61:3: note: in expansion of macro ‘SET_ENUM_VALUE’
   SET_ENUM_VALUE(FFI_FIRST_ABI);
   ^
In file included from /home/splincode/.node-gyp/8.1.3/include/node/node.h:63:0,
                 from /home/splincode/.node-gyp/8.1.3/include/node/node_buffer.h:25,
                 from ../src/ffi.cc:1:
/home/splincode/.node-gyp/8.1.3/include/node/v8.h:2764:25: note: candidate: static v8::Local<v8::Integer> v8::Integer::New(v8::Isolate*, int32_t)
   static Local<Integer> New(Isolate* isolate, int32_t value);
                         ^
/home/splincode/.node-gyp/8.1.3/include/node/v8.h:2764:25: note:   candidate expects 2 arguments, 1 provided
../src/ffi.cc:42:15: error: ‘NewSymbol’ is not a member of ‘v8::String’
   target->Set(String::NewSymbol(#_value), \
               ^
../src/ffi.cc:62:3: note: in expansion of macro ‘SET_ENUM_VALUE’
   SET_ENUM_VALUE(FFI_LAST_ABI);
   ^
../src/ffi.cc:43:43: error: no matching function for call to ‘v8::Integer::New(ssize_t)’
               Integer::New((ssize_t)_value), \
                                           ^
../src/ffi.cc:62:3: note: in expansion of macro ‘SET_ENUM_VALUE’
   SET_ENUM_VALUE(FFI_LAST_ABI);
   ^
In file included from /home/splincode/.node-gyp/8.1.3/include/node/node.h:63:0,
                 from /home/splincode/.node-gyp/8.1.3/include/node/node_buffer.h:25,
                 from ../src/ffi.cc:1:
/home/splincode/.node-gyp/8.1.3/include/node/v8.h:2764:25: note: candidate: static v8::Local<v8::Integer> v8::Integer::New(v8::Isolate*, int32_t)
   static Local<Integer> New(Isolate* isolate, int32_t value);
                         ^
/home/splincode/.node-gyp/8.1.3/include/node/v8.h:2764:25: note:   candidate expects 2 arguments, 1 provided
../src/ffi.cc:42:15: error: ‘NewSymbol’ is not a member of ‘v8::String’
   target->Set(String::NewSymbol(#_value), \
               ^
../src/ffi.cc:78:3: note: in expansion of macro ‘SET_ENUM_VALUE’
   SET_ENUM_VALUE(FFI_SYSV);
   ^
../src/ffi.cc:43:43: error: no matching function for call to ‘v8::Integer::New(ssize_t)’
               Integer::New((ssize_t)_value), \
                                           ^
../src/ffi.cc:78:3: note: in expansion of macro ‘SET_ENUM_VALUE’
   SET_ENUM_VALUE(FFI_SYSV);
   ^
In file included from /home/splincode/.node-gyp/8.1.3/include/node/node.h:63:0,
                 from /home/splincode/.node-gyp/8.1.3/include/node/node_buffer.h:25,
                 from ../src/ffi.cc:1:
/home/splincode/.node-gyp/8.1.3/include/node/v8.h:2764:25: note: candidate: static v8::Local<v8::Integer> v8::Integer::New(v8::Isolate*, int32_t)
   static Local<Integer> New(Isolate* isolate, int32_t value);
                         ^
/home/splincode/.node-gyp/8.1.3/include/node/v8.h:2764:25: note:   candidate expects 2 arguments, 1 provided
../src/ffi.cc:42:15: error: ‘NewSymbol’ is not a member of ‘v8::String’
   target->Set(String::NewSymbol(#_value), \
               ^
../src/ffi.cc:80:3: note: in expansion of macro ‘SET_ENUM_VALUE’
   SET_ENUM_VALUE(FFI_UNIX64);
   ^
../src/ffi.cc:43:43: error: no matching function for call to ‘v8::Integer::New(ssize_t)’
               Integer::New((ssize_t)_value), \
                                           ^
../src/ffi.cc:80:3: note: in expansion of macro ‘SET_ENUM_VALUE’
   SET_ENUM_VALUE(FFI_UNIX64);
   ^
In file included from /home/splincode/.node-gyp/8.1.3/include/node/node.h:63:0,
                 from /home/splincode/.node-gyp/8.1.3/include/node/node_buffer.h:25,
                 from ../src/ffi.cc:1:
/home/splincode/.node-gyp/8.1.3/include/node/v8.h:2764:25: note: candidate: static v8::Local<v8::Integer> v8::Integer::New(v8::Isolate*, int32_t)
   static Local<Integer> New(Isolate* isolate, int32_t value);
                         ^
/home/splincode/.node-gyp/8.1.3/include/node/v8.h:2764:25: note:   candidate expects 2 arguments, 1 provided
../src/ffi.cc:42:15: error: ‘NewSymbol’ is not a member of ‘v8::String’
   target->Set(String::NewSymbol(#_value), \
               ^
../src/ffi.cc:85:3: note: in expansion of macro ‘SET_ENUM_VALUE’
   SET_ENUM_VALUE(RTLD_LAZY);
   ^
../src/ffi.cc:43:43: error: no matching function for call to ‘v8::Integer::New(ssize_t)’
               Integer::New((ssize_t)_value), \
                                           ^
../src/ffi.cc:85:3: note: in expansion of macro ‘SET_ENUM_VALUE’
   SET_ENUM_VALUE(RTLD_LAZY);
   ^
In file included from /home/splincode/.node-gyp/8.1.3/include/node/node.h:63:0,
                 from /home/splincode/.node-gyp/8.1.3/include/node/node_buffer.h:25,
                 from ../src/ffi.cc:1:
/home/splincode/.node-gyp/8.1.3/include/node/v8.h:2764:25: note: candidate: static v8::Local<v8::Integer> v8::Integer::New(v8::Isolate*, int32_t)
   static Local<Integer> New(Isolate* isolate, int32_t value);
                         ^
/home/splincode/.node-gyp/8.1.3/include/node/v8.h:2764:25: note:   candidate expects 2 arguments, 1 provided
../src/ffi.cc:42:15: error: ‘NewSymbol’ is not a member of ‘v8::String’
   target->Set(String::NewSymbol(#_value), \
               ^
../src/ffi.cc:88:3: note: in expansion of macro ‘SET_ENUM_VALUE’
   SET_ENUM_VALUE(RTLD_NOW);
   ^
../src/ffi.cc:43:43: error: no matching function for call to ‘v8::Integer::New(ssize_t)’
               Integer::New((ssize_t)_value), \
                                           ^
../src/ffi.cc:88:3: note: in expansion of macro ‘SET_ENUM_VALUE’
   SET_ENUM_VALUE(RTLD_NOW);
   ^
In file included from /home/splincode/.node-gyp/8.1.3/include/node/node.h:63:0,
                 from /home/splincode/.node-gyp/8.1.3/include/node/node_buffer.h:25,
                 from ../src/ffi.cc:1:
/home/splincode/.node-gyp/8.1.3/include/node/v8.h:2764:25: note: candidate: static v8::Local<v8::Integer> v8::Integer::New(v8::Isolate*, int32_t)
   static Local<Integer> New(Isolate* isolate, int32_t value);
                         ^
/home/splincode/.node-gyp/8.1.3/include/node/v8.h:2764:25: note:   candidate expects 2 arguments, 1 provided
../src/ffi.cc:42:15: error: ‘NewSymbol’ is not a member of ‘v8::String’
   target->Set(String::NewSymbol(#_value), \
               ^
../src/ffi.cc:91:3: note: in expansion of macro ‘SET_ENUM_VALUE’
   SET_ENUM_VALUE(RTLD_LOCAL);
   ^
../src/ffi.cc:43:43: error: no matching function for call to ‘v8::Integer::New(ssize_t)’
               Integer::New((ssize_t)_value), \
                                           ^
../src/ffi.cc:91:3: note: in expansion of macro ‘SET_ENUM_VALUE’
   SET_ENUM_VALUE(RTLD_LOCAL);
   ^
In file included from /home/splincode/.node-gyp/8.1.3/include/node/node.h:63:0,
                 from /home/splincode/.node-gyp/8.1.3/include/node/node_buffer.h:25,
                 from ../src/ffi.cc:1:
/home/splincode/.node-gyp/8.1.3/include/node/v8.h:2764:25: note: candidate: static v8::Local<v8::Integer> v8::Integer::New(v8::Isolate*, int32_t)
   static Local<Integer> New(Isolate* isolate, int32_t value);
                         ^
/home/splincode/.node-gyp/8.1.3/include/node/v8.h:2764:25: note:   candidate expects 2 arguments, 1 provided
../src/ffi.cc:42:15: error: ‘NewSymbol’ is not a member of ‘v8::String’
   target->Set(String::NewSymbol(#_value), \
               ^
../src/ffi.cc:94:3: note: in expansion of macro ‘SET_ENUM_VALUE’
   SET_ENUM_VALUE(RTLD_GLOBAL);
   ^
../src/ffi.cc:43:43: error: no matching function for call to ‘v8::Integer::New(ssize_t)’
               Integer::New((ssize_t)_value), \
                                           ^
../src/ffi.cc:94:3: note: in expansion of macro ‘SET_ENUM_VALUE’
   SET_ENUM_VALUE(RTLD_GLOBAL);
   ^
In file included from /home/splincode/.node-gyp/8.1.3/include/node/node.h:63:0,
                 from /home/splincode/.node-gyp/8.1.3/include/node/node_buffer.h:25,
                 from ../src/ffi.cc:1:
/home/splincode/.node-gyp/8.1.3/include/node/v8.h:2764:25: note: candidate: static v8::Local<v8::Integer> v8::Integer::New(v8::Isolate*, int32_t)
   static Local<Integer> New(Isolate* isolate, int32_t value);
                         ^
/home/splincode/.node-gyp/8.1.3/include/node/v8.h:2764:25: note:   candidate expects 2 arguments, 1 provided
../src/ffi.cc:42:15: error: ‘NewSymbol’ is not a member of ‘v8::String’
   target->Set(String::NewSymbol(#_value), \
               ^
../src/ffi.cc:97:3: note: in expansion of macro ‘SET_ENUM_VALUE’
   SET_ENUM_VALUE(RTLD_NOLOAD);
   ^
../src/ffi.cc:43:43: error: no matching function for call to ‘v8::Integer::New(ssize_t)’
               Integer::New((ssize_t)_value), \
                                           ^
../src/ffi.cc:97:3: note: in expansion of macro ‘SET_ENUM_VALUE’
   SET_ENUM_VALUE(RTLD_NOLOAD);
   ^
In file included from /home/splincode/.node-gyp/8.1.3/include/node/node.h:63:0,
                 from /home/splincode/.node-gyp/8.1.3/include/node/node_buffer.h:25,
                 from ../src/ffi.cc:1:
/home/splincode/.node-gyp/8.1.3/include/node/v8.h:2764:25: note: candidate: static v8::Local<v8::Integer> v8::Integer::New(v8::Isolate*, int32_t)
   static Local<Integer> New(Isolate* isolate, int32_t value);
                         ^
/home/splincode/.node-gyp/8.1.3/include/node/v8.h:2764:25: note:   candidate expects 2 arguments, 1 provided
../src/ffi.cc:42:15: error: ‘NewSymbol’ is not a member of ‘v8::String’
   target->Set(String::NewSymbol(#_value), \
               ^
../src/ffi.cc:100:3: note: in expansion of macro ‘SET_ENUM_VALUE’
   SET_ENUM_VALUE(RTLD_NODELETE);
   ^
../src/ffi.cc:43:43: error: no matching function for call to ‘v8::Integer::New(ssize_t)’
               Integer::New((ssize_t)_value), \
                                           ^
../src/ffi.cc:100:3: note: in expansion of macro ‘SET_ENUM_VALUE’
   SET_ENUM_VALUE(RTLD_NODELETE);
   ^
In file included from /home/splincode/.node-gyp/8.1.3/include/node/node.h:63:0,
                 from /home/splincode/.node-gyp/8.1.3/include/node/node_buffer.h:25,
                 from ../src/ffi.cc:1:
/home/splincode/.node-gyp/8.1.3/include/node/v8.h:2764:25: note: candidate: static v8::Local<v8::Integer> v8::Integer::New(v8::Isolate*, int32_t)
   static Local<Integer> New(Isolate* isolate, int32_t value);
                         ^
/home/splincode/.node-gyp/8.1.3/include/node/v8.h:2764:25: note:   candidate expects 2 arguments, 1 provided
../src/ffi.cc:108:15: error: ‘NewSymbol’ is not a member of ‘v8::String’
   target->Set(String::NewSymbol("RTLD_NEXT"), WrapPointer((char *)RTLD_NEXT), static_cast<PropertyAttribute>(ReadOnly|DontDelete));
               ^
../src/ffi.cc:111:15: error: ‘NewSymbol’ is not a member of ‘v8::String’
   target->Set(String::NewSymbol("RTLD_DEFAULT"), WrapPointer((char *)RTLD_DEFAULT), static_cast<PropertyAttribute>(ReadOnly|DontDelete));
               ^
../src/ffi.cc:120:15: error: ‘NewSymbol’ is not a member of ‘v8::String’
   target->Set(String::NewSymbol("FFI_ARG_SIZE"), Integer::New(sizeof(ffi_arg)), static_cast<PropertyAttribute>(ReadOnly|DontDelete));
               ^
../src/ffi.cc:120:78: error: no matching function for call to ‘v8::Integer::New(long unsigned int)’
   target->Set(String::NewSymbol("FFI_ARG_SIZE"), Integer::New(sizeof(ffi_arg)), static_cast<PropertyAttribute>(ReadOnly|DontDelete));
                                                                              ^
In file included from /home/splincode/.node-gyp/8.1.3/include/node/node.h:63:0,
                 from /home/splincode/.node-gyp/8.1.3/include/node/node_buffer.h:25,
                 from ../src/ffi.cc:1:
/home/splincode/.node-gyp/8.1.3/include/node/v8.h:2764:25: note: candidate: static v8::Local<v8::Integer> v8::Integer::New(v8::Isolate*, int32_t)
   static Local<Integer> New(Isolate* isolate, int32_t value);
                         ^
/home/splincode/.node-gyp/8.1.3/include/node/v8.h:2764:25: note:   candidate expects 2 arguments, 1 provided
../src/ffi.cc:121:15: error: ‘NewSymbol’ is not a member of ‘v8::String’
   target->Set(String::NewSymbol("FFI_SARG_SIZE"), Integer::New(sizeof(ffi_sarg)), static_cast<PropertyAttribute>(ReadOnly|DontDelete));
               ^
../src/ffi.cc:121:80: error: no matching function for call to ‘v8::Integer::New(long unsigned int)’
   target->Set(String::NewSymbol("FFI_SARG_SIZE"), Integer::New(sizeof(ffi_sarg)), static_cast<PropertyAttribute>(ReadOnly|DontDelete));
                                                                                ^
In file included from /home/splincode/.node-gyp/8.1.3/include/node/node.h:63:0,
                 from /home/splincode/.node-gyp/8.1.3/include/node/node_buffer.h:25,
                 from ../src/ffi.cc:1:
/home/splincode/.node-gyp/8.1.3/include/node/v8.h:2764:25: note: candidate: static v8::Local<v8::Integer> v8::Integer::New(v8::Isolate*, int32_t)
   static Local<Integer> New(Isolate* isolate, int32_t value);
                         ^
/home/splincode/.node-gyp/8.1.3/include/node/v8.h:2764:25: note:   candidate expects 2 arguments, 1 provided
../src/ffi.cc:122:15: error: ‘NewSymbol’ is not a member of ‘v8::String’
   target->Set(String::NewSymbol("FFI_TYPE_SIZE"), Integer::New(sizeof(ffi_type)), static_cast<PropertyAttribute>(ReadOnly|DontDelete));
               ^
../src/ffi.cc:122:80: error: no matching function for call to ‘v8::Integer::New(long unsigned int)’
   target->Set(String::NewSymbol("FFI_TYPE_SIZE"), Integer::New(sizeof(ffi_type)), static_cast<PropertyAttribute>(ReadOnly|DontDelete));
                                                                                ^
In file included from /home/splincode/.node-gyp/8.1.3/include/node/node.h:63:0,
                 from /home/splincode/.node-gyp/8.1.3/include/node/node_buffer.h:25,
                 from ../src/ffi.cc:1:
/home/splincode/.node-gyp/8.1.3/include/node/v8.h:2764:25: note: candidate: static v8::Local<v8::Integer> v8::Integer::New(v8::Isolate*, int32_t)
   static Local<Integer> New(Isolate* isolate, int32_t value);
                         ^
/home/splincode/.node-gyp/8.1.3/include/node/v8.h:2764:25: note:   candidate expects 2 arguments, 1 provided
../src/ffi.cc:123:15: error: ‘NewSymbol’ is not a member of ‘v8::String’
   target->Set(String::NewSymbol("FFI_CIF_SIZE"), Integer::New(sizeof(ffi_cif)), static_cast<PropertyAttribute>(ReadOnly|DontDelete));
               ^
../src/ffi.cc:123:78: error: no matching function for call to ‘v8::Integer::New(long unsigned int)’
   target->Set(String::NewSymbol("FFI_CIF_SIZE"), Integer::New(sizeof(ffi_cif)), static_cast<PropertyAttribute>(ReadOnly|DontDelete));
                                                                              ^
In file included from /home/splincode/.node-gyp/8.1.3/include/node/node.h:63:0,
                 from /home/splincode/.node-gyp/8.1.3/include/node/node_buffer.h:25,
                 from ../src/ffi.cc:1:
/home/splincode/.node-gyp/8.1.3/include/node/v8.h:2764:25: note: candidate: static v8::Local<v8::Integer> v8::Integer::New(v8::Isolate*, int32_t)
   static Local<Integer> New(Isolate* isolate, int32_t value);
                         ^
/home/splincode/.node-gyp/8.1.3/include/node/v8.h:2764:25: note:   candidate expects 2 arguments, 1 provided
../src/ffi.cc:129:15: error: ‘NewSymbol’ is not a member of ‘v8::String’
   target->Set(String::NewSymbol("HAS_OBJC"), Boolean::New(hasObjc), static_cast<PropertyAttribute>(ReadOnly|DontDelete));
               ^
../src/ffi.cc:129:66: error: no matching function for call to ‘v8::Boolean::New(bool&)’
   target->Set(String::NewSymbol("HAS_OBJC"), Boolean::New(hasObjc), static_cast<PropertyAttribute>(ReadOnly|DontDelete));
                                                                  ^
In file included from /home/splincode/.node-gyp/8.1.3/include/node/node.h:63:0,
                 from /home/splincode/.node-gyp/8.1.3/include/node/node_buffer.h:25,
                 from ../src/ffi.cc:1:
/home/splincode/.node-gyp/8.1.3/include/node/v8.h:9115:16: note: candidate: static v8::Local<v8::Boolean> v8::Boolean::New(v8::Isolate*, bool)
 Local<Boolean> Boolean::New(Isolate* isolate, bool value) {
                ^
/home/splincode/.node-gyp/8.1.3/include/node/v8.h:9115:16: note:   candidate expects 2 arguments, 1 provided
../src/ffi.cc:131:37: error: no matching function for call to ‘v8::Object::New()’
   Local<Object> ftmap = Object::New();
                                     ^
In file included from /home/splincode/.node-gyp/8.1.3/include/node/node.h:63:0,
                 from /home/splincode/.node-gyp/8.1.3/include/node/node_buffer.h:25,
                 from ../src/ffi.cc:1:
/home/splincode/.node-gyp/8.1.3/include/node/v8.h:3315:24: note: candidate: static v8::Local<v8::Object> v8::Object::New(v8::Isolate*)
   static Local<Object> New(Isolate* isolate);
                        ^
/home/splincode/.node-gyp/8.1.3/include/node/v8.h:3315:24: note:   candidate expects 1 argument, 0 provided
../src/ffi.cc:132:14: error: ‘NewSymbol’ is not a member of ‘v8::String’
   ftmap->Set(String::NewSymbol("void"),     WrapPointer((char *)&ffi_type_void));
              ^
../src/ffi.cc:133:14: error: ‘NewSymbol’ is not a member of ‘v8::String’
   ftmap->Set(String::NewSymbol("uint8"),    WrapPointer((char *)&ffi_type_uint8));
              ^
../src/ffi.cc:134:14: error: ‘NewSymbol’ is not a member of ‘v8::String’
   ftmap->Set(String::NewSymbol("int8"),     WrapPointer((char *)&ffi_type_sint8));
              ^
../src/ffi.cc:135:14: error: ‘NewSymbol’ is not a member of ‘v8::String’
   ftmap->Set(String::NewSymbol("uint16"),   WrapPointer((char *)&ffi_type_uint16));
              ^
../src/ffi.cc:136:14: error: ‘NewSymbol’ is not a member of ‘v8::String’
   ftmap->Set(String::NewSymbol("int16"),    WrapPointer((char *)&ffi_type_sint16));
              ^
../src/ffi.cc:137:14: error: ‘NewSymbol’ is not a member of ‘v8::String’
   ftmap->Set(String::NewSymbol("uint32"),   WrapPointer((char *)&ffi_type_uint32));
              ^
../src/ffi.cc:138:14: error: ‘NewSymbol’ is not a member of ‘v8::String’
   ftmap->Set(String::NewSymbol("int32"),    WrapPointer((char *)&ffi_type_sint32));
              ^
../src/ffi.cc:139:14: error: ‘NewSymbol’ is not a member of ‘v8::String’
   ftmap->Set(String::NewSymbol("uint64"),   WrapPointer((char *)&ffi_type_uint64));
              ^
../src/ffi.cc:140:14: error: ‘NewSymbol’ is not a member of ‘v8::String’
   ftmap->Set(String::NewSymbol("int64"),    WrapPointer((char *)&ffi_type_sint64));
              ^
../src/ffi.cc:141:14: error: ‘NewSymbol’ is not a member of ‘v8::String’
   ftmap->Set(String::NewSymbol("uchar"),    WrapPointer((char *)&ffi_type_uchar));
              ^
../src/ffi.cc:142:14: error: ‘NewSymbol’ is not a member of ‘v8::String’
   ftmap->Set(String::NewSymbol("char"),     WrapPointer((char *)&ffi_type_schar));
              ^
../src/ffi.cc:143:14: error: ‘NewSymbol’ is not a member of ‘v8::String’
   ftmap->Set(String::NewSymbol("ushort"),   WrapPointer((char *)&ffi_type_ushort));
              ^
../src/ffi.cc:144:14: error: ‘NewSymbol’ is not a member of ‘v8::String’
   ftmap->Set(String::NewSymbol("short"),    WrapPointer((char *)&ffi_type_sshort));
              ^
../src/ffi.cc:145:14: error: ‘NewSymbol’ is not a member of ‘v8::String’
   ftmap->Set(String::NewSymbol("uint"),     WrapPointer((char *)&ffi_type_uint));
              ^
../src/ffi.cc:146:14: error: ‘NewSymbol’ is not a member of ‘v8::String’
   ftmap->Set(String::NewSymbol("int"),      WrapPointer((char *)&ffi_type_sint));
              ^
../src/ffi.cc:147:14: error: ‘NewSymbol’ is not a member of ‘v8::String’
   ftmap->Set(String::NewSymbol("float"),    WrapPointer((char *)&ffi_type_float));
              ^
../src/ffi.cc:148:14: error: ‘NewSymbol’ is not a member of ‘v8::String’
   ftmap->Set(String::NewSymbol("double"),   WrapPointer((char *)&ffi_type_double));
              ^
../src/ffi.cc:149:14: error: ‘NewSymbol’ is not a member of ‘v8::String’
   ftmap->Set(String::NewSymbol("pointer"),  WrapPointer((char *)&ffi_type_pointer));
              ^
../src/ffi.cc:152:14: error: ‘NewSymbol’ is not a member of ‘v8::String’
   ftmap->Set(String::NewSymbol("ulonglong"), WrapPointer((char *)&ffi_type_ulong));
              ^
../src/ffi.cc:153:14: error: ‘NewSymbol’ is not a member of ‘v8::String’
   ftmap->Set(String::NewSymbol("longlong"),  WrapPointer((char *)&ffi_type_slong));
              ^
../src/ffi.cc:155:15: error: ‘NewSymbol’ is not a member of ‘v8::String’
   target->Set(String::NewSymbol("FFI_TYPES"), ftmap);
               ^
../src/ffi.cc: At global scope:
../src/ffi.cc:171:37: error: ‘Arguments’ does not name a type
 Handle<Value> FFI::FFIPrepCif(const Arguments& args) {
                                     ^
In file included from /home/splincode/.node-gyp/8.1.3/include/node/node.h:63:0,
                 from /home/splincode/.node-gyp/8.1.3/include/node/node_buffer.h:25,
                 from ../src/ffi.cc:1:
/home/splincode/.node-gyp/8.1.3/include/node/v8.h: In static member function ‘static v8::Handle<v8::Value> FFI::FFIPrepCif(const int&)’:
/home/splincode/.node-gyp/8.1.3/include/node/v8.h:846:13: error: ‘v8::HandleScope::HandleScope()’ is protected
   V8_INLINE HandleScope() {}
             ^
../src/ffi.cc:172:15: error: within this context
   HandleScope scope;
               ^
../src/ffi.cc:179:12: error: request for member ‘Length’ in ‘args’, which is of non-class type ‘const int’
   if (args.Length() != 5) {
            ^
In file included from ../src/ffi.cc:2:0:
../src/ffi.h:22:66: error: ‘New’ is not a member of ‘v8::String’
 #define THROW_ERROR_EXCEPTION(x) ThrowException(Exception::Error(String::New(x)))
                                                                  ^
../src/ffi.cc:180:12: note: in expansion of macro ‘THROW_ERROR_EXCEPTION’
     return THROW_ERROR_EXCEPTION("ffi_prep_cif() requires 5 arguments!");
            ^
../src/ffi.h:22:81: error: ‘ThrowException’ was not declared in this scope
 #define THROW_ERROR_EXCEPTION(x) ThrowException(Exception::Error(String::New(x)))
                                                                                 ^
../src/ffi.cc:180:12: note: in expansion of macro ‘THROW_ERROR_EXCEPTION’
     return THROW_ERROR_EXCEPTION("ffi_prep_cif() requires 5 arguments!");
            ^
../src/ffi.cc:183:33: error: invalid types ‘const int[int]’ for array subscript
   Handle<Value> cif_buf = args[0];
                                 ^
In file included from ../src/ffi.cc:2:0:
../src/ffi.h:22:66: error: ‘New’ is not a member of ‘v8::String’
 #define THROW_ERROR_EXCEPTION(x) ThrowException(Exception::Error(String::New(x)))
                                                                  ^
../src/ffi.cc:185:12: note: in expansion of macro ‘THROW_ERROR_EXCEPTION’
     return THROW_ERROR_EXCEPTION("prepCif(): Buffer required as first arg");
            ^
../src/ffi.h:22:81: error: ‘ThrowException’ was not declared in this scope
 #define THROW_ERROR_EXCEPTION(x) ThrowException(Exception::Error(String::New(x)))
                                                                                 ^
../src/ffi.cc:185:12: note: in expansion of macro ‘THROW_ERROR_EXCEPTION’
     return THROW_ERROR_EXCEPTION("prepCif(): Buffer required as first arg");
            ^
../src/ffi.cc:189:17: error: invalid types ‘const int[int]’ for array subscript
   nargs = args[1]->Uint32Value();
                 ^
../src/ffi.cc:190:30: error: invalid types ‘const int[int]’ for array subscript
   rtype = Buffer::Data(args[2]->ToObject());
                              ^
../src/ffi.cc:191:31: error: invalid types ‘const int[int]’ for array subscript
   atypes = Buffer::Data(args[3]->ToObject());
                               ^
../src/ffi.cc:192:24: error: invalid types ‘const int[int]’ for array subscript
   abi = (ffi_abi)args[4]->Uint32Value();
                        ^
../src/ffi.cc:201:16: error: ‘class v8::HandleScope’ has no member named ‘Close’
   return scope.Close(Integer::NewFromUnsigned(status));
                ^
../src/ffi.cc:201:53: error: no matching function for call to ‘v8::Integer::NewFromUnsigned(ffi_status&)’
   return scope.Close(Integer::NewFromUnsigned(status));
                                                     ^
In file included from /home/splincode/.node-gyp/8.1.3/include/node/node.h:63:0,
                 from /home/splincode/.node-gyp/8.1.3/include/node/node_buffer.h:25,
                 from ../src/ffi.cc:1:
/home/splincode/.node-gyp/8.1.3/include/node/v8.h:2765:25: note: candidate: static v8::Local<v8::Integer> v8::Integer::NewFromUnsigned(v8::Isolate*, uint32_t)
   static Local<Integer> NewFromUnsigned(Isolate* isolate, uint32_t value);
                         ^
/home/splincode/.node-gyp/8.1.3/include/node/v8.h:2765:25: note:   candidate expects 2 arguments, 1 provided
../src/ffi.cc: At global scope:
../src/ffi.cc:218:40: error: ‘Arguments’ does not name a type
 Handle<Value> FFI::FFIPrepCifVar(const Arguments& args) {
                                        ^
In file included from /home/splincode/.node-gyp/8.1.3/include/node/node.h:63:0,
                 from /home/splincode/.node-gyp/8.1.3/include/node/node_buffer.h:25,
                 from ../src/ffi.cc:1:
/home/splincode/.node-gyp/8.1.3/include/node/v8.h: In static member function ‘static v8::Handle<v8::Value> FFI::FFIPrepCifVar(const int&)’:
/home/splincode/.node-gyp/8.1.3/include/node/v8.h:846:13: error: ‘v8::HandleScope::HandleScope()’ is protected
   V8_INLINE HandleScope() {}
             ^
../src/ffi.cc:219:15: error: within this context
   HandleScope scope;
               ^
../src/ffi.cc:226:12: error: request for member ‘Length’ in ‘args’, which is of non-class type ‘const int’
   if (args.Length() != 6) {
            ^
In file included from ../src/ffi.cc:2:0:
../src/ffi.h:22:66: error: ‘New’ is not a member of ‘v8::String’
 #define THROW_ERROR_EXCEPTION(x) ThrowException(Exception::Error(String::New(x)))
                                                                  ^
../src/ffi.cc:227:12: note: in expansion of macro ‘THROW_ERROR_EXCEPTION’
     return THROW_ERROR_EXCEPTION("ffi_prep_cif() requires 5 arguments!");
            ^
../src/ffi.h:22:81: error: ‘ThrowException’ was not declared in this scope
 #define THROW_ERROR_EXCEPTION(x) ThrowException(Exception::Error(String::New(x)))
                                                                                 ^
../src/ffi.cc:227:12: note: in expansion of macro ‘THROW_ERROR_EXCEPTION’
     return THROW_ERROR_EXCEPTION("ffi_prep_cif() requires 5 arguments!");
            ^
../src/ffi.cc:230:33: error: invalid types ‘const int[int]’ for array subscript
   Handle<Value> cif_buf = args[0];
                                 ^
In file included from ../src/ffi.cc:2:0:
../src/ffi.h:22:66: error: ‘New’ is not a member of ‘v8::String’
 #define THROW_ERROR_EXCEPTION(x) ThrowException(Exception::Error(String::New(x)))
                                                                  ^
../src/ffi.cc:232:12: note: in expansion of macro ‘THROW_ERROR_EXCEPTION’
     return THROW_ERROR_EXCEPTION("prepCifVar(): Buffer required as first arg");
            ^
../src/ffi.h:22:81: error: ‘ThrowException’ was not declared in this scope
 #define THROW_ERROR_EXCEPTION(x) ThrowException(Exception::Error(String::New(x)))
                                                                                 ^
../src/ffi.cc:232:12: note: in expansion of macro ‘THROW_ERROR_EXCEPTION’
     return THROW_ERROR_EXCEPTION("prepCifVar(): Buffer required as first arg");
            ^
../src/ffi.cc:236:17: error: invalid types ‘const int[int]’ for array subscript
   fargs = args[1]->Uint32Value();
                 ^
../src/ffi.cc:237:17: error: invalid types ‘const int[int]’ for array subscript
   targs = args[2]->Uint32Value();
                 ^
../src/ffi.cc:238:30: error: invalid types ‘const int[int]’ for array subscript
   rtype = Buffer::Data(args[3]->ToObject());
                              ^
../src/ffi.cc:239:31: error: invalid types ‘const int[int]’ for array subscript
   atypes = Buffer::Data(args[4]->ToObject());
                               ^
../src/ffi.cc:240:24: error: invalid types ‘const int[int]’ for array subscript
   abi = (ffi_abi)args[5]->Uint32Value();
                        ^
../src/ffi.cc:250:16: error: ‘class v8::HandleScope’ has no member named ‘Close’
   return scope.Close(Integer::NewFromUnsigned(status));
                ^
../src/ffi.cc:250:53: error: no matching function for call to ‘v8::Integer::NewFromUnsigned(ffi_status&)’
   return scope.Close(Integer::NewFromUnsigned(status));
                                                     ^
In file included from /home/splincode/.node-gyp/8.1.3/include/node/node.h:63:0,
                 from /home/splincode/.node-gyp/8.1.3/include/node/node_buffer.h:25,
                 from ../src/ffi.cc:1:
/home/splincode/.node-gyp/8.1.3/include/node/v8.h:2765:25: note: candidate: static v8::Local<v8::Integer> v8::Integer::NewFromUnsigned(v8::Isolate*, uint32_t)
   static Local<Integer> NewFromUnsigned(Isolate* isolate, uint32_t value);
                         ^
/home/splincode/.node-gyp/8.1.3/include/node/v8.h:2765:25: note:   candidate expects 2 arguments, 1 provided
../src/ffi.cc: At global scope:
../src/ffi.cc:262:34: error: ‘Arguments’ does not name a type
 Handle<Value> FFI::FFICall(const Arguments& args) {
                                  ^
In file included from /home/splincode/.node-gyp/8.1.3/include/node/node.h:63:0,
                 from /home/splincode/.node-gyp/8.1.3/include/node/node_buffer.h:25,
                 from ../src/ffi.cc:1:
/home/splincode/.node-gyp/8.1.3/include/node/v8.h: In static member function ‘static v8::Handle<v8::Value> FFI::FFICall(const int&)’:
/home/splincode/.node-gyp/8.1.3/include/node/v8.h:846:13: error: ‘v8::HandleScope::HandleScope()’ is protected
   V8_INLINE HandleScope() {}
             ^
../src/ffi.cc:263:15: error: within this context
   HandleScope scope;
               ^
../src/ffi.cc:265:12: error: request for member ‘Length’ in ‘args’, which is of non-class type ‘const int’
   if (args.Length() != 4) {
            ^
In file included from ../src/ffi.cc:2:0:
../src/ffi.h:22:66: error: ‘New’ is not a member of ‘v8::String’
 #define THROW_ERROR_EXCEPTION(x) ThrowException(Exception::Error(String::New(x)))
                                                                  ^
../src/ffi.cc:266:12: note: in expansion of macro ‘THROW_ERROR_EXCEPTION’
     return THROW_ERROR_EXCEPTION("ffi_call() requires 4 arguments!");
            ^
../src/ffi.h:22:81: error: ‘ThrowException’ was not declared in this scope
 #define THROW_ERROR_EXCEPTION(x) ThrowException(Exception::Error(String::New(x)))
                                                                                 ^
../src/ffi.cc:266:12: note: in expansion of macro ‘THROW_ERROR_EXCEPTION’
     return THROW_ERROR_EXCEPTION("ffi_call() requires 4 arguments!");
            ^
../src/ffi.cc:269:37: error: invalid types ‘const int[int]’ for array subscript
   char *cif    = Buffer::Data(args[0]->ToObject());
                                     ^
../src/ffi.cc:270:37: error: invalid types ‘const int[int]’ for array subscript
   char *fn     = Buffer::Data(args[1]->ToObject());
                                     ^
../src/ffi.cc:271:37: error: invalid types ‘const int[int]’ for array subscript
   char *res    = Buffer::Data(args[2]->ToObject());
                                     ^
../src/ffi.cc:272:37: error: invalid types ‘const int[int]’ for array subscript
   char *fnargs = Buffer::Data(args[3]->ToObject());
                                     ^
../src/ffi.cc:289:20: error: too few arguments to function ‘v8::Local<v8::Primitive> v8::Undefined(v8::Isolate*)’
   return Undefined();
                    ^
In file included from /home/splincode/.node-gyp/8.1.3/include/node/node.h:63:0,
                 from /home/splincode/.node-gyp/8.1.3/include/node/node_buffer.h:25,
                 from ../src/ffi.cc:1:
/home/splincode/.node-gyp/8.1.3/include/node/v8.h:295:27: note: declared here
   friend Local<Primitive> Undefined(Isolate* isolate);
                           ^
../src/ffi.cc: At global scope:
../src/ffi.cc:302:39: error: ‘Arguments’ does not name a type
 Handle<Value> FFI::FFICallAsync(const Arguments& args) {
                                       ^
In file included from /home/splincode/.node-gyp/8.1.3/include/node/node.h:63:0,
                 from /home/splincode/.node-gyp/8.1.3/include/node/node_buffer.h:25,
                 from ../src/ffi.cc:1:
/home/splincode/.node-gyp/8.1.3/include/node/v8.h: In static member function ‘static v8::Handle<v8::Value> FFI::FFICallAsync(const int&)’:
/home/splincode/.node-gyp/8.1.3/include/node/v8.h:846:13: error: ‘v8::HandleScope::HandleScope()’ is protected
   V8_INLINE HandleScope() {}
             ^
../src/ffi.cc:303:15: error: within this context
   HandleScope scope;
               ^
../src/ffi.cc:305:12: error: request for member ‘Length’ in ‘args’, which is of non-class type ‘const int’
   if (args.Length() != 5) {
            ^
In file included from ../src/ffi.cc:2:0:
../src/ffi.h:22:66: error: ‘New’ is not a member of ‘v8::String’
 #define THROW_ERROR_EXCEPTION(x) ThrowException(Exception::Error(String::New(x)))
                                                                  ^
../src/ffi.cc:306:12: note: in expansion of macro ‘THROW_ERROR_EXCEPTION’
     return THROW_ERROR_EXCEPTION("ffi_call_async() requires 5 arguments!");
            ^
../src/ffi.h:22:81: error: ‘ThrowException’ was not declared in this scope
 #define THROW_ERROR_EXCEPTION(x) ThrowException(Exception::Error(String::New(x)))
                                                                                 ^
../src/ffi.cc:306:12: note: in expansion of macro ‘THROW_ERROR_EXCEPTION’
     return THROW_ERROR_EXCEPTION("ffi_call_async() requires 5 arguments!");
            ^
../src/ffi.cc:313:32: error: invalid types ‘const int[int]’ for array subscript
   p->cif  = Buffer::Data(args[0]->ToObject());
                                ^
../src/ffi.cc:314:32: error: invalid types ‘const int[int]’ for array subscript
   p->fn   = Buffer::Data(args[1]->ToObject());
                                ^
../src/ffi.cc:315:32: error: invalid types ‘const int[int]’ for array subscript
   p->res  = Buffer::Data(args[2]->ToObject());
                                ^
../src/ffi.cc:316:32: error: invalid types ‘const int[int]’ for array subscript
   p->argv = Buffer::Data(args[3]->ToObject());
                                ^
../src/ffi.cc:318:58: error: invalid types ‘const int[int]’ for array subscript
   Local<Function> callback = Local<Function>::Cast(args[4]);
                                                          ^
../src/ffi.cc:319:51: error: no matching function for call to ‘v8::Persistent<v8::Function>::New(v8::Local<v8::Function>&)’
   p->callback = Persistent<Function>::New(callback);
                                                   ^
In file included from /home/splincode/.node-gyp/8.1.3/include/node/node.h:63:0,
                 from /home/splincode/.node-gyp/8.1.3/include/node/node_buffer.h:25,
                 from ../src/ffi.cc:1:
/home/splincode/.node-gyp/8.1.3/include/node/v8.h:8707:4: note: candidate: static T* v8::PersistentBase<T>::New(v8::Isolate*, T*) [with T = v8::Function]
 T* PersistentBase<T>::New(Isolate* isolate, T* that) {
    ^
/home/splincode/.node-gyp/8.1.3/include/node/v8.h:8707:4: note:   candidate expects 2 arguments, 1 provided
../src/ffi.cc:328:20: error: too few arguments to function ‘v8::Local<v8::Primitive> v8::Undefined(v8::Isolate*)’
   return Undefined();
                    ^
In file included from /home/splincode/.node-gyp/8.1.3/include/node/node.h:63:0,
                 from /home/splincode/.node-gyp/8.1.3/include/node/node_buffer.h:25,
                 from ../src/ffi.cc:1:
/home/splincode/.node-gyp/8.1.3/include/node/v8.h:295:27: note: declared here
   friend Local<Primitive> Undefined(Isolate* isolate);
                           ^
/home/splincode/.node-gyp/8.1.3/include/node/v8.h: In static member function ‘static void FFI::FinishAsyncFFICall(uv_work_t*)’:
/home/splincode/.node-gyp/8.1.3/include/node/v8.h:846:13: error: ‘v8::HandleScope::HandleScope()’ is protected
   V8_INLINE HandleScope() {}
             ^
../src/ffi.cc:361:15: error: within this context
   HandleScope scope;
               ^
../src/ffi.cc:365:33: error: too few arguments to function ‘v8::Local<v8::Primitive> v8::Null(v8::Isolate*)’
   Handle<Value> argv[] = { Null() };
                                 ^
In file included from /home/splincode/.node-gyp/8.1.3/include/node/node.h:63:0,
                 from /home/splincode/.node-gyp/8.1.3/include/node/node_buffer.h:25,
                 from ../src/ffi.cc:1:
/home/splincode/.node-gyp/8.1.3/include/node/v8.h:296:27: note: declared here
   friend Local<Primitive> Null(Isolate* isolate);
                           ^
../src/ffi.cc:371:12: warning: ‘v8::TryCatch::TryCatch()’ is deprecated: Use isolate version [-Wdeprecated-declarations]
   TryCatch try_catch;
            ^
In file included from /home/splincode/.node-gyp/8.1.3/include/node/v8.h:26:0,
                 from /home/splincode/.node-gyp/8.1.3/include/node/node.h:63,
                 from /home/splincode/.node-gyp/8.1.3/include/node/node_buffer.h:25,
                 from ../src/ffi.cc:1:
/home/splincode/.node-gyp/8.1.3/include/node/v8.h:7877:40: note: declared here
   V8_DEPRECATED("Use isolate version", TryCatch());
                                        ^
/home/splincode/.node-gyp/8.1.3/include/node/v8config.h:329:3: note: in definition of macro ‘V8_DEPRECATED’
   declarator __attribute__((deprecated(message)))
   ^
../src/ffi.cc:374:14: error: base operand of ‘->’ has non-pointer type ‘v8::Persistent<v8::Function>’
   p->callback->Call(Context::GetCurrent()->Global(), 1, argv);
              ^
../src/ffi.cc:374:21: error: ‘GetCurrent’ is not a member of ‘v8::Context’
   p->callback->Call(Context::GetCurrent()->Global(), 1, argv);
                     ^
../src/ffi.cc:377:15: error: ‘class v8::Persistent<v8::Function>’ has no member named ‘Dispose’
   p->callback.Dispose();
               ^
../src/ffi.cc:378:15: error: ‘class v8::Persistent<v8::Function>’ has no member named ‘Clear’
   p->callback.Clear();
               ^
../src/ffi.cc:385:29: warning: ‘void node::FatalException(const v8::TryCatch&)’ is deprecated: Use FatalException(isolate, ...) [-Wdeprecated-declarations]
     FatalException(try_catch);
                             ^
In file included from /home/splincode/.node-gyp/8.1.3/include/node/node_buffer.h:25:0,
                 from ../src/ffi.cc:1:
/home/splincode/.node-gyp/8.1.3/include/node/node.h:318:29: note: declared here
                 inline void FatalException(const v8::TryCatch& try_catch) {
                             ^
/home/splincode/.node-gyp/8.1.3/include/node/node.h:87:42: note: in definition of macro ‘NODE_DEPRECATED’
     __attribute__((deprecated(message))) declarator
                                          ^
In file included from /home/splincode/.node-gyp/8.1.3/include/node/node.h:63:0,
                 from /home/splincode/.node-gyp/8.1.3/include/node/node_buffer.h:25,
                 from ../src/ffi.cc:1:
/home/splincode/.node-gyp/8.1.3/include/node/v8.h: In function ‘void init(v8::Handle<v8::Object>)’:
/home/splincode/.node-gyp/8.1.3/include/node/v8.h:846:13: error: ‘v8::HandleScope::HandleScope()’ is protected
   V8_INLINE HandleScope() {}
             ^
../src/ffi.cc:390:15: error: within this context
   HandleScope scope;
               ^
ffi_bindings.target.mk:102: ошибка выполнения рецепта для цели «Release/obj.target/ffi_bindings/src/ffi.o»
make: *** [Release/obj.target/ffi_bindings/src/ffi.o] Ошибка 1
make: выход из каталога «/home/splincode/Develop/blackbox/test/server-side-api/node_modules/ffi/build»
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:258:23)
gyp ERR! stack     at emitTwo (events.js:125:13)
gyp ERR! stack     at ChildProcess.emit (events.js:213:7)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:197:12)
gyp ERR! System Linux 4.4.0-81-generic
gyp ERR! command "/usr/bin/nodejs" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /home/splincode/Develop/blackbox/test/server-side-api/node_modules/ffi
gyp ERR! node -v v8.1.3
gyp ERR! node-gyp -v v3.6.2
gyp ERR! not ok 
npm WARN test-loader@1.0.0 No description
npm WARN test-loader@1.0.0 No repository field.

npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! ffi@1.2.5 install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the ffi@1.2.5 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!     /home/splincode/.npm/_logs/2017-07-06T12_59_09_956Z-debug.log
jeremyfa commented 7 years ago

Quoting the repository README:

IMPORTANT: This repository is no longer maintained.

The same feature is now built-in with node v0.12: >https://nodejs.org/api/child_process.html#child_process_child_process_execsync_command_options