1stsetup / node-lirc_client

NodeJS add-on to communicate with the lirc_client
GNU General Public License v2.0
2 stars 2 forks source link

Trouble rebuilding node-lirc_client #2

Closed rbong closed 9 years ago

rbong commented 9 years ago

I am trying to rebuild node-lirc_client to prevent a version mismatch in another project I'd like to integrate it into.

First of all, for posterity, I needed to use Python 2.7 instead of Python 3. That's taken care of.

When I run

nw-gyp rebuild --target=0.12.0

I get all kinds of errors. I have retried this with different target versions on different systems (Ubuntu and Arch) and I get similar walls of errors.

gyp info it worked if it ends with ok
gyp info using nw-gyp@0.12.2
gyp info using node@0.12.4 | linux | x64
child_process: customFds option is deprecated, use stdio instead.
gyp info spawn python
gyp info spawn args [ '/usr/lib/node_modules/nw-gyp/gyp/gyp_main.py',
gyp info spawn args   'binding.gyp',
gyp info spawn args   '-f',
gyp info spawn args   'make',
gyp info spawn args   '-I',
gyp info spawn args   '/home/rbong/programs/lircjs/node-lirc_client/build/config.gypi',
gyp info spawn args   '-I',
gyp info spawn args   '/usr/lib/node_modules/nw-gyp/addon.gypi',
gyp info spawn args   '-I',
gyp info spawn args   '/home/rbong/.nw-gyp/0.12.0/common.gypi',
gyp info spawn args   '-Dlibrary=shared_library',
gyp info spawn args   '-Dvisibility=default',
gyp info spawn args   '-Dnode_root_dir=/home/rbong/.nw-gyp/0.12.0',
gyp info spawn args   '-Dmodule_root_dir=/home/rbong/programs/lircjs/node-lirc_client',
gyp info spawn args   '--depth=.',
gyp info spawn args   '--generator-output',
gyp info spawn args   'build',
gyp info spawn args   '-Goutput_dir=.' ]
gyp info spawn make
gyp info spawn args [ 'BUILDTYPE=Release', '-C', 'build' ]
make: Entering directory '/home/rbong/programs/lircjs/node-lirc_client/build'
  CXX(target) Release/obj.target/lirc_client/src/lirc_client.o
../src/lirc_client.cc: In function ‘void connect(v8::Handle<v8::String>, v8::Handle<v8::Boolean>, v8::Handle<v8::String>, v8::Handle<v8::Function>)’:
../src/lirc_client.cc:61:38: error: invalid conversion from ‘int’ to ‘v8::Isolate*’ [-fpermissive]
  Local<Array> tmpArray = Array::New(1);
                                      ^
In file included from /home/rbong/.nw-gyp/0.12.0/src/node.h:55:0,
                 from ../src/lirc_client.cc:7:
/usr/include/v8.h:2638:23: note: initializing argument 1 of ‘static v8::Local<v8::Array> v8::Array::New(v8::Isolate*, int)’
   static Local<Array> New(Isolate* isolate, int length = 0);
                       ^
../src/lirc_client.cc:62:29: error: no matching function for call to ‘v8::Number::New(int)’
  tmpArray->Set(Number::New(0), configfiles);
                             ^
../src/lirc_client.cc:62:29: note: candidate is:
In file included from /home/rbong/.nw-gyp/0.12.0/src/node.h:55:0,
                 from ../src/lirc_client.cc:7:
/usr/include/v8.h:2211:24: note: static v8::Local<v8::Number> v8::Number::New(v8::Isolate*, double)
   static Local<Number> New(Isolate* isolate, double value);
                        ^
/usr/include/v8.h:2211:24: note:   candidate expects 2 arguments, 1 provided
../src/lirc_client.cc: In function ‘void connect(v8::Handle<v8::String>, v8::Handle<v8::Boolean>, v8::Handle<v8::Array>, v8::Handle<v8::Function>)’:
../src/lirc_client.cc:72:54: error: no matching function for call to ‘v8::Persistent<v8::String>::New(v8::Handle<v8::String>&)’
  gProgramName = Persistent<String>::New( programname );
                                                      ^
../src/lirc_client.cc:72:54: note: candidate is:
In file included from /home/rbong/.nw-gyp/0.12.0/src/node.h:55:0,
                 from ../src/lirc_client.cc:7:
/usr/include/v8.h:6297:4: note: static T* v8::PersistentBase<T>::New(v8::Isolate*, T*) [with T = v8::String]
 T* PersistentBase<T>::New(Isolate* isolate, T* that) {
    ^
/usr/include/v8.h:6297:4: note:   candidate expects 2 arguments, 1 provided
../src/lirc_client.cc:73:47: error: no matching function for call to ‘v8::Persistent<v8::Boolean>::New(v8::Handle<v8::Boolean>&)’
  gVerbose = Persistent<Boolean>::New( verbose );
                                               ^
../src/lirc_client.cc:73:47: note: candidate is:
In file included from /home/rbong/.nw-gyp/0.12.0/src/node.h:55:0,
                 from ../src/lirc_client.cc:7:
/usr/include/v8.h:6297:4: note: static T* v8::PersistentBase<T>::New(v8::Isolate*, T*) [with T = v8::Boolean]
 T* PersistentBase<T>::New(Isolate* isolate, T* that) {
    ^
/usr/include/v8.h:6297:4: note:   candidate expects 2 arguments, 1 provided
../src/lirc_client.cc:80:45: error: could not convert ‘gProgramName’ from ‘v8::Persistent<v8::String>’ to ‘v8::Handle<v8::String>’
   char * writable = string2char(gProgramName);
                                             ^
../src/lirc_client.cc:86:35: error: ‘New’ is not a member of ‘v8::String’
   ThrowException(Exception::Error(String::New("Error on lirc_init.")));
                                   ^
../src/lirc_client.cc:86:70: error: ‘ThrowException’ was not declared in this scope
   ThrowException(Exception::Error(String::New("Error on lirc_init.")));
                                                                      ^
../src/lirc_client.cc:90:52: error: no matching function for call to ‘v8::Array::New()’
  configFiles_ = Persistent<Array>::New( Array::New() );
                                                    ^
../src/lirc_client.cc:90:52: note: candidate is:
In file included from /home/rbong/.nw-gyp/0.12.0/src/node.h:55:0,
                 from ../src/lirc_client.cc:7:
/usr/include/v8.h:2638:23: note: static v8::Local<v8::Array> v8::Array::New(v8::Isolate*, int)
   static Local<Array> New(Isolate* isolate, int length = 0);
                       ^
/usr/include/v8.h:2638:23: note:   candidate expects 2 arguments, 0 provided
../src/lirc_client.cc:102:42: error: no matching function for call to ‘v8::Persistent<v8::Function>::New(v8::Handle<v8::Function>&)’
  global_cb = Persistent<Function>::New(cb);
                                          ^
../src/lirc_client.cc:102:42: note: candidate is:
In file included from /home/rbong/.nw-gyp/0.12.0/src/node.h:55:0,
                 from ../src/lirc_client.cc:7:
/usr/include/v8.h:6297:4: note: static T* v8::PersistentBase<T>::New(v8::Isolate*, T*) [with T = v8::Function]
 T* PersistentBase<T>::New(Isolate* isolate, T* that) {
    ^
/usr/include/v8.h:6297:4: note:   candidate expects 2 arguments, 1 provided
../src/lirc_client.cc: In function ‘void addConfig(v8::Local<v8::String>)’:
../src/lirc_client.cc:147:51: error: ‘New’ is not a member of ‘v8::String’
    ThrowException(Exception::Error(String::Concat(String::New("Error on lirc_readconfig for file:"),name)));
                                                   ^
../src/lirc_client.cc:147:107: error: ‘ThrowException’ was not declared in this scope
    ThrowException(Exception::Error(String::Concat(String::New("Error on lirc_readconfig for file:"),name)));
                                                                                                           ^
../src/lirc_client.cc:154:36: error: base operand of ‘->’ has non-pointer type ‘v8::Persistent<v8::Array>’
   uint32_t oldLength = configFiles_->Length();
                                    ^
../src/lirc_client.cc:156:15: error: base operand of ‘->’ has non-pointer type ‘v8::Persistent<v8::Array>’
   configFiles_->Set(String::New("length"), Number::New(oldLength+1));
               ^
../src/lirc_client.cc:156:21: error: ‘New’ is not a member of ‘v8::String’
   configFiles_->Set(String::New("length"), Number::New(oldLength+1));
                     ^
../src/lirc_client.cc:156:67: error: no matching function for call to ‘v8::Number::New(uint32_t)’
   configFiles_->Set(String::New("length"), Number::New(oldLength+1));
                                                                   ^
../src/lirc_client.cc:156:67: note: candidate is:
In file included from /home/rbong/.nw-gyp/0.12.0/src/node.h:55:0,
                 from ../src/lirc_client.cc:7:
/usr/include/v8.h:2211:24: note: static v8::Local<v8::Number> v8::Number::New(v8::Isolate*, double)
   static Local<Number> New(Isolate* isolate, double value);
                        ^
/usr/include/v8.h:2211:24: note:   candidate expects 2 arguments, 1 provided
../src/lirc_client.cc:157:15: error: base operand of ‘->’ has non-pointer type ‘v8::Persistent<v8::Array>’
   configFiles_->Set(Number::New(oldLength), name);
               ^
../src/lirc_client.cc:157:42: error: no matching function for call to ‘v8::Number::New(uint32_t&)’
   configFiles_->Set(Number::New(oldLength), name);
                                          ^
../src/lirc_client.cc:157:42: note: candidate is:
In file included from /home/rbong/.nw-gyp/0.12.0/src/node.h:55:0,
                 from ../src/lirc_client.cc:7:
/usr/include/v8.h:2211:24: note: static v8::Local<v8::Number> v8::Number::New(v8::Isolate*, double)
   static Local<Number> New(Isolate* isolate, double value);
                        ^
/usr/include/v8.h:2211:24: note:   candidate expects 2 arguments, 1 provided
../src/lirc_client.cc:160:35: error: ‘New’ is not a member of ‘v8::String’
   ThrowException(Exception::Error(String::New("Config buffer is full.")));
                                   ^
../src/lirc_client.cc:160:73: error: ‘ThrowException’ was not declared in this scope
   ThrowException(Exception::Error(String::New("Config buffer is full.")));
                                                                         ^
../src/lirc_client.cc: In function ‘void addConfig(v8::Handle<v8::Array>)’:
../src/lirc_client.cc:169:51: error: ‘New’ is not a member of ‘v8::String’
    ThrowException(Exception::Error(String::Concat(String::New("Array element is not a String:"),names->Get(i)->ToString())));
                                                   ^
../src/lirc_client.cc:169:124: error: ‘ThrowException’ was not declared in this scope
    ThrowException(Exception::Error(String::Concat(String::New("Array element is not a String:"),names->Get(i)->ToString())));
                                                                                                                            ^
../src/lirc_client.cc: In function ‘void clearConfig()’:
../src/lirc_client.cc:179:14: error: base operand of ‘->’ has non-pointer type ‘v8::Persistent<v8::Array>’
  configFiles_->Set(String::New("length"), Number::New(0));
              ^
../src/lirc_client.cc:179:20: error: ‘New’ is not a member of ‘v8::String’
  configFiles_->Set(String::New("length"), Number::New(0));
                    ^
../src/lirc_client.cc:179:56: error: no matching function for call to ‘v8::Number::New(int)’
  configFiles_->Set(String::New("length"), Number::New(0));
                                                        ^
../src/lirc_client.cc:179:56: note: candidate is:
In file included from /home/rbong/.nw-gyp/0.12.0/src/node.h:55:0,
                 from ../src/lirc_client.cc:7:
/usr/include/v8.h:2211:24: note: static v8::Local<v8::Number> v8::Number::New(v8::Isolate*, double)
   static Local<Number> New(Isolate* isolate, double value);
                        ^
/usr/include/v8.h:2211:24: note:   candidate expects 2 arguments, 1 provided
../src/lirc_client.cc: At global scope:
../src/lirc_client.cc:190:37: error: ‘Arguments’ does not name a type
 static Handle<Value> Connect (const Arguments& args) {
                                     ^
In file included from /home/rbong/.nw-gyp/0.12.0/src/node.h:55:0,
                 from ../src/lirc_client.cc:7:
/usr/include/v8.h: In function ‘v8::Handle<v8::Value> Connect(const int&)’:
/usr/include/v8.h:832:13: error: ‘v8::HandleScope::HandleScope()’ is protected
   V8_INLINE HandleScope() {}
             ^
../src/lirc_client.cc:191:14: error: within this context
  HandleScope scope;
              ^
../src/lirc_client.cc:194:20: error: too few arguments to function ‘v8::Handle<v8::Primitive> v8::Undefined(v8::Isolate*)’
   return Undefined();
                    ^
In file included from /home/rbong/.nw-gyp/0.12.0/src/node.h:55:0,
                 from ../src/lirc_client.cc:7:
/usr/include/v8.h:312:28: note: declared here
   friend Handle<Primitive> Undefined(Isolate* isolate);
                            ^
../src/lirc_client.cc:197:11: error: request for member ‘Length’ in ‘args’, which is of non-class type ‘const int’
  if (args.Length() > 4) {
           ^
../src/lirc_client.cc:198:46: error: ‘New’ is not a member of ‘v8::String’
   return ThrowException(Exception::TypeError(String::New("Only four arguments are allowed.")));
                                              ^
../src/lirc_client.cc:198:94: error: ‘ThrowException’ was not declared in this scope
   return ThrowException(Exception::TypeError(String::New("Only four arguments are allowed.")));
                                                                                              ^
../src/lirc_client.cc:206:24: error: request for member ‘Length’ in ‘args’, which is of non-class type ‘const int’
  for(int i=0; i < args.Length(); i++) {
                        ^
../src/lirc_client.cc:207:13: error: invalid types ‘const int[int]’ for array subscript
   if (args[i]->IsString()) {
             ^
../src/lirc_client.cc:209:48: error: ‘New’ is not a member of ‘v8::String’
     return ThrowException(Exception::TypeError(String::New("Only two String argument are allowed (Program name and Config files).")));
                                                ^
../src/lirc_client.cc:209:133: error: ‘ThrowException’ was not declared in this scope
     return ThrowException(Exception::TypeError(String::New("Only two String argument are allowed (Program name and Config files).")));
                                                                                                                                     ^
../src/lirc_client.cc:218:18: error: invalid types ‘const int[int]’ for array subscript
   else if (args[i]->IsBoolean()) {
                  ^
../src/lirc_client.cc:220:48: error: ‘New’ is not a member of ‘v8::String’
     return ThrowException(Exception::TypeError(String::New("Only one boolean argument is allowed (verbose).")));
                                                ^
../src/lirc_client.cc:220:111: error: ‘ThrowException’ was not declared in this scope
     return ThrowException(Exception::TypeError(String::New("Only one boolean argument is allowed (verbose).")));
                                                                                                               ^
../src/lirc_client.cc:224:18: error: invalid types ‘const int[int]’ for array subscript
   else if (args[i]->IsFunction()) {
                  ^
../src/lirc_client.cc:226:48: error: ‘New’ is not a member of ‘v8::String’
     return ThrowException(Exception::TypeError(String::New("Only one Callback Function argument is allowed (cb).")));
                                                ^
../src/lirc_client.cc:226:116: error: ‘ThrowException’ was not declared in this scope
     return ThrowException(Exception::TypeError(String::New("Only one Callback Function argument is allowed (cb).")));
                                                                                                                    ^
../src/lirc_client.cc:230:18: error: invalid types ‘const int[int]’ for array subscript
   else if (args[i]->IsArray()) {
                  ^
../src/lirc_client.cc:232:48: error: ‘New’ is not a member of ‘v8::String’
     return ThrowException(Exception::TypeError(String::New("Only one Array argument is allowed (Config files).")));
                                                ^
../src/lirc_client.cc:232:114: error: ‘ThrowException’ was not declared in this scope
     return ThrowException(Exception::TypeError(String::New("Only one Array argument is allowed (Config files).")));
                                                                                                                  ^
../src/lirc_client.cc:239:42: error: ‘New’ is not a member of ‘v8::String’
   return ThrowException(Exception::Error(String::New("Programname is required.")));
                                          ^
../src/lirc_client.cc:239:82: error: ‘ThrowException’ was not declared in this scope
   return ThrowException(Exception::Error(String::New("Programname is required.")));
                                                                                  ^
../src/lirc_client.cc:243:42: error: ‘New’ is not a member of ‘v8::String’
   return ThrowException(Exception::Error(String::New("Callback function is required.")));
                                          ^
../src/lirc_client.cc:243:88: error: ‘ThrowException’ was not declared in this scope
   return ThrowException(Exception::Error(String::New("Callback function is required.")));
                                                                                        ^
../src/lirc_client.cc:247:46: error: ‘New’ is not a member of ‘v8::String’
   return ThrowException(Exception::TypeError(String::New("Order of arguments is wrong. verbose must be before config files.")));
                                              ^
../src/lirc_client.cc:247:127: error: ‘ThrowException’ was not declared in this scope
   return ThrowException(Exception::TypeError(String::New("Order of arguments is wrong. verbose must be before config files.")));
                                                                                                                               ^
../src/lirc_client.cc:251:46: error: ‘New’ is not a member of ‘v8::String’
   return ThrowException(Exception::TypeError(String::New("Order of arguments is wrong. program name must be before config files.")));
                                              ^
../src/lirc_client.cc:251:132: error: ‘ThrowException’ was not declared in this scope
   return ThrowException(Exception::TypeError(String::New("Order of arguments is wrong. program name must be before config files.")));
                                                                                                                                    ^
../src/lirc_client.cc:255:46: error: ‘New’ is not a member of ‘v8::String’
   return ThrowException(Exception::TypeError(String::New("Order of arguments is wrong. program name must be before verbose.")));
                                              ^
../src/lirc_client.cc:255:127: error: ‘ThrowException’ was not declared in this scope
   return ThrowException(Exception::TypeError(String::New("Order of arguments is wrong. program name must be before verbose.")));
                                                                                                                               ^
../src/lirc_client.cc:259:30: error: invalid types ‘const int[int]’ for array subscript
   connect( args[prognameindex]->ToString(), verboseindex > -1 ? args[verboseindex]->ToBoolean() : Boolean::New(false), String::New(""), Local<Function>::Cast(args[cbindex]));
                              ^
../src/lirc_client.cc:259:82: error: invalid types ‘const int[int]’ for array subscript
   connect( args[prognameindex]->ToString(), verboseindex > -1 ? args[verboseindex]->ToBoolean() : Boolean::New(false), String::New(""), Local<Function>::Cast(args[cbindex]));
                                                                                  ^
../src/lirc_client.cc:259:117: error: no matching function for call to ‘v8::Boolean::New(bool)’
   connect( args[prognameindex]->ToString(), verboseindex > -1 ? args[verboseindex]->ToBoolean() : Boolean::New(false), String::New(""), Local<Function>::Cast(args[cbindex]));
                                                                                                                     ^
../src/lirc_client.cc:259:117: note: candidate is:
In file included from /home/rbong/.nw-gyp/0.12.0/src/node.h:55:0,
                 from ../src/lirc_client.cc:7:
/usr/include/v8.h:6691:17: note: static v8::Handle<v8::Boolean> v8::Boolean::New(v8::Isolate*, bool)
 Handle<Boolean> Boolean::New(Isolate* isolate, bool value) {
                 ^
/usr/include/v8.h:6691:17: note:   candidate expects 2 arguments, 1 provided
../src/lirc_client.cc:259:120: error: ‘New’ is not a member of ‘v8::String’
   connect( args[prognameindex]->ToString(), verboseindex > -1 ? args[verboseindex]->ToBoolean() : Boolean::New(false), String::New(""), Local<Function>::Cast(args[cbindex]));
                                                                                                                        ^
../src/lirc_client.cc:259:171: error: invalid types ‘const int[int]’ for array subscript
   connect( args[prognameindex]->ToString(), verboseindex > -1 ? args[verboseindex]->ToBoolean() : Boolean::New(false), String::New(""), Local<Function>::Cast(args[cbindex]));
                                                                                                                                                                           ^
../src/lirc_client.cc:261:27: error: invalid types ‘const int[int]’ for array subscript
  else if (args[configindex]->IsArray()) {
                           ^
../src/lirc_client.cc:262:30: error: invalid types ‘const int[int]’ for array subscript
   connect( args[prognameindex]->ToString(), verboseindex > -1 ? args[verboseindex]->ToBoolean() : Boolean::New(false), Local<Array>::Cast(args[configindex]), Local<Function>::Cast(args[cbindex]));
                              ^
../src/lirc_client.cc:262:82: error: invalid types ‘const int[int]’ for array subscript
   connect( args[prognameindex]->ToString(), verboseindex > -1 ? args[verboseindex]->ToBoolean() : Boolean::New(false), Local<Array>::Cast(args[configindex]), Local<Function>::Cast(args[cbindex]));
                                                                                  ^
../src/lirc_client.cc:262:117: error: no matching function for call to ‘v8::Boolean::New(bool)’
   connect( args[prognameindex]->ToString(), verboseindex > -1 ? args[verboseindex]->ToBoolean() : Boolean::New(false), Local<Array>::Cast(args[configindex]), Local<Function>::Cast(args[cbindex]));
                                                                                                                     ^
../src/lirc_client.cc:262:117: note: candidate is:
In file included from /home/rbong/.nw-gyp/0.12.0/src/node.h:55:0,
                 from ../src/lirc_client.cc:7:
/usr/include/v8.h:6691:17: note: static v8::Handle<v8::Boolean> v8::Boolean::New(v8::Isolate*, bool)
 Handle<Boolean> Boolean::New(Isolate* isolate, bool value) {
                 ^
/usr/include/v8.h:6691:17: note:   candidate expects 2 arguments, 1 provided
../src/lirc_client.cc:262:155: error: invalid types ‘const int[int]’ for array subscript
   connect( args[prognameindex]->ToString(), verboseindex > -1 ? args[verboseindex]->ToBoolean() : Boolean::New(false), Local<Array>::Cast(args[configindex]), Local<Function>::Cast(args[cbindex]));
                                                                                                                                                           ^
../src/lirc_client.cc:262:193: error: invalid types ‘const int[int]’ for array subscript
   connect( args[prognameindex]->ToString(), verboseindex > -1 ? args[verboseindex]->ToBoolean() : Boolean::New(false), Local<Array>::Cast(args[configindex]), Local<Function>::Cast(args[cbindex]));
                                                                                                                                                                                                 ^
../src/lirc_client.cc:264:27: error: invalid types ‘const int[int]’ for array subscript
  else if (args[configindex]->IsString()) {
                           ^
../src/lirc_client.cc:265:30: error: invalid types ‘const int[int]’ for array subscript
   connect( args[prognameindex]->ToString(), verboseindex > -1 ? args[verboseindex]->ToBoolean() : Boolean::New(false), args[configindex]->ToString(), Local<Function>::Cast(args[cbindex]));
                              ^
../src/lirc_client.cc:265:82: error: invalid types ‘const int[int]’ for array subscript
   connect( args[prognameindex]->ToString(), verboseindex > -1 ? args[verboseindex]->ToBoolean() : Boolean::New(false), args[configindex]->ToString(), Local<Function>::Cast(args[cbindex]));
                                                                                  ^
../src/lirc_client.cc:265:117: error: no matching function for call to ‘v8::Boolean::New(bool)’
   connect( args[prognameindex]->ToString(), verboseindex > -1 ? args[verboseindex]->ToBoolean() : Boolean::New(false), args[configindex]->ToString(), Local<Function>::Cast(args[cbindex]));
                                                                                                                     ^
../src/lirc_client.cc:265:117: note: candidate is:
In file included from /home/rbong/.nw-gyp/0.12.0/src/node.h:55:0,
                 from ../src/lirc_client.cc:7:
/usr/include/v8.h:6691:17: note: static v8::Handle<v8::Boolean> v8::Boolean::New(v8::Isolate*, bool)
 Handle<Boolean> Boolean::New(Isolate* isolate, bool value) {
                 ^
/usr/include/v8.h:6691:17: note:   candidate expects 2 arguments, 1 provided
../src/lirc_client.cc:265:136: error: invalid types ‘const int[int]’ for array subscript
   connect( args[prognameindex]->ToString(), verboseindex > -1 ? args[verboseindex]->ToBoolean() : Boolean::New(false), args[configindex]->ToString(), Local<Function>::Cast(args[cbindex]));
                                                                                                                                        ^
../src/lirc_client.cc:265:185: error: invalid types ‘const int[int]’ for array subscript
   connect( args[prognameindex]->ToString(), verboseindex > -1 ? args[verboseindex]->ToBoolean() : Boolean::New(false), args[configindex]->ToString(), Local<Function>::Cast(args[cbindex]));
                                                                                                                                                                                         ^
../src/lirc_client.cc:268:19: error: too few arguments to function ‘v8::Handle<v8::Primitive> v8::Undefined(v8::Isolate*)’
  return Undefined();
                   ^
In file included from /home/rbong/.nw-gyp/0.12.0/src/node.h:55:0,
                 from ../src/lirc_client.cc:7:
/usr/include/v8.h:312:28: note: declared here
   friend Handle<Primitive> Undefined(Isolate* isolate);
                            ^
../src/lirc_client.cc: At global scope:
../src/lirc_client.cc:271:39: error: ‘Arguments’ does not name a type
 static Handle<Value> ReConnect (const Arguments& args) {
                                       ^
In file included from /home/rbong/.nw-gyp/0.12.0/src/node.h:55:0,
                 from ../src/lirc_client.cc:7:
/usr/include/v8.h: In function ‘v8::Handle<v8::Value> ReConnect(const int&)’:
/usr/include/v8.h:832:13: error: ‘v8::HandleScope::HandleScope()’ is protected
   V8_INLINE HandleScope() {}
             ^
../src/lirc_client.cc:272:14: error: within this context
  HandleScope scope;
              ^
../src/lirc_client.cc:275:20: error: too few arguments to function ‘v8::Handle<v8::Primitive> v8::Undefined(v8::Isolate*)’
   return Undefined();
                    ^
In file included from /home/rbong/.nw-gyp/0.12.0/src/node.h:55:0,
                 from ../src/lirc_client.cc:7:
/usr/include/v8.h:312:28: note: declared here
   friend Handle<Primitive> Undefined(Isolate* isolate);
                            ^
../src/lirc_client.cc:278:27: error: base operand of ‘->’ has non-pointer type ‘v8::Persistent<v8::Array>’
  int length = configFiles_->Length();
                           ^
../src/lirc_client.cc:279:43: error: invalid conversion from ‘int’ to ‘v8::Isolate*’ [-fpermissive]
  Local<Array> tmpArray = Array::New(length);
                                           ^
In file included from /home/rbong/.nw-gyp/0.12.0/src/node.h:55:0,
                 from ../src/lirc_client.cc:7:
/usr/include/v8.h:2638:23: note: initializing argument 1 of ‘static v8::Local<v8::Array> v8::Array::New(v8::Isolate*, int)’
   static Local<Array> New(Isolate* isolate, int length = 0);
                       ^
../src/lirc_client.cc:281:30: error: no matching function for call to ‘v8::Number::New(int&)’
   tmpArray->Set(Number::New(i), configFiles_->Get(i));
                              ^
../src/lirc_client.cc:281:30: note: candidate is:
In file included from /home/rbong/.nw-gyp/0.12.0/src/node.h:55:0,
                 from ../src/lirc_client.cc:7:
/usr/include/v8.h:2211:24: note: static v8::Local<v8::Number> v8::Number::New(v8::Isolate*, double)
   static Local<Number> New(Isolate* isolate, double value);
                        ^
/usr/include/v8.h:2211:24: note:   candidate expects 2 arguments, 1 provided
../src/lirc_client.cc:281:45: error: base operand of ‘->’ has non-pointer type ‘v8::Persistent<v8::Array>’
   tmpArray->Set(Number::New(i), configFiles_->Get(i));
                                             ^
../src/lirc_client.cc:283:53: error: no matching function for call to ‘connect(v8::Persistent<v8::String>&, v8::Persistent<v8::Boolean>&, v8::Local<v8::Array>&, v8::Persistent<v8::Function>&)’
  connect(gProgramName, gVerbose, tmpArray, global_cb);
                                                     ^
../src/lirc_client.cc:283:53: note: candidates are:
In file included from /home/rbong/.nw-gyp/0.12.0/src/../deps/uv/include/uv-unix.h:30:0,
                 from /home/rbong/.nw-gyp/0.12.0/src/../deps/uv/include/uv.h:61,
                 from /home/rbong/.nw-gyp/0.12.0/src/node.h:6,
                 from ../src/lirc_client.cc:7:
/usr/include/sys/socket.h:137:12: note: int connect(int, const sockaddr*, socklen_t)
 extern int connect (int __fd, __CONST_SOCKADDR_ARG __addr, socklen_t __len);
            ^
/usr/include/sys/socket.h:137:12: note:   candidate expects 3 arguments, 4 provided
../src/lirc_client.cc:66:6: note: void connect(v8::Handle<v8::String>, v8::Handle<v8::Boolean>, v8::Handle<v8::Array>, v8::Handle<v8::Function>)
 void connect(Handle<String> programname, Handle<Boolean> verbose, Handle<Array> configfiles, Handle<Function> cb) {
      ^
../src/lirc_client.cc:66:6: note:   no known conversion for argument 1 from ‘v8::Persistent<v8::String>’ to ‘v8::Handle<v8::String>’
../src/lirc_client.cc:60:6: note: void connect(v8::Handle<v8::String>, v8::Handle<v8::Boolean>, v8::Handle<v8::String>, v8::Handle<v8::Function>)
 void connect(Handle<String> programname, Handle<Boolean> verbose, Handle<String> configfiles, Handle<Function> cb) {
      ^
../src/lirc_client.cc:60:6: note:   no known conversion for argument 1 from ‘v8::Persistent<v8::String>’ to ‘v8::Handle<v8::String>’
../src/lirc_client.cc:285:19: error: too few arguments to function ‘v8::Handle<v8::Primitive> v8::Undefined(v8::Isolate*)’
  return Undefined();
                   ^
In file included from /home/rbong/.nw-gyp/0.12.0/src/node.h:55:0,
                 from ../src/lirc_client.cc:7:
/usr/include/v8.h:312:28: note: declared here
   friend Handle<Primitive> Undefined(Isolate* isolate);
                            ^
../src/lirc_client.cc: At global scope:
../src/lirc_client.cc:288:35: error: ‘Arguments’ does not name a type
 static Handle<Value> Close (const Arguments& args) {
                                   ^
In file included from /home/rbong/.nw-gyp/0.12.0/src/node.h:55:0,
                 from ../src/lirc_client.cc:7:
/usr/include/v8.h: In function ‘v8::Handle<v8::Value> Close(const int&)’:
/usr/include/v8.h:832:13: error: ‘v8::HandleScope::HandleScope()’ is protected
   V8_INLINE HandleScope() {}
             ^
../src/lirc_client.cc:289:19: error: within this context
       HandleScope scope;
                   ^
../src/lirc_client.cc:293:24: error: too few arguments to function ‘v8::Handle<v8::Primitive> v8::Undefined(v8::Isolate*)’
       return Undefined();
                        ^
In file included from /home/rbong/.nw-gyp/0.12.0/src/node.h:55:0,
                 from ../src/lirc_client.cc:7:
/usr/include/v8.h:312:28: note: declared here
   friend Handle<Primitive> Undefined(Isolate* isolate);
                            ^
../src/lirc_client.cc: At global scope:
../src/lirc_client.cc:296:39: error: ‘Arguments’ does not name a type
 static Handle<Value> AddConfig (const Arguments& args) {
                                       ^
In file included from /home/rbong/.nw-gyp/0.12.0/src/node.h:55:0,
                 from ../src/lirc_client.cc:7:
/usr/include/v8.h: In function ‘v8::Handle<v8::Value> AddConfig(const int&)’:
/usr/include/v8.h:832:13: error: ‘v8::HandleScope::HandleScope()’ is protected
   V8_INLINE HandleScope() {}
             ^
../src/lirc_client.cc:297:14: error: within this context
  HandleScope scope;
              ^
../src/lirc_client.cc:299:11: error: request for member ‘Length’ in ‘args’, which is of non-class type ‘const int’
  if (args.Length() != 1) {
           ^
../src/lirc_client.cc:300:46: error: ‘New’ is not a member of ‘v8::String’
   return ThrowException(Exception::TypeError(String::New("Only one Array or String argument is allowed.")));
                                              ^
../src/lirc_client.cc:300:107: error: ‘ThrowException’ was not declared in this scope
   return ThrowException(Exception::TypeError(String::New("Only one Array or String argument is allowed.")));
                                                                                                           ^
../src/lirc_client.cc:303:12: error: invalid types ‘const int[int]’ for array subscript
  if (args[0]->IsArray()) {
            ^
../src/lirc_client.cc:304:38: error: invalid types ‘const int[int]’ for array subscript
   addConfig(Local<Array>::Cast(args[0]));
                                      ^
../src/lirc_client.cc:306:17: error: invalid types ‘const int[int]’ for array subscript
  else if (args[0]->IsString()) {
                 ^
../src/lirc_client.cc:307:19: error: invalid types ‘const int[int]’ for array subscript
   addConfig(args[0]->ToString());
                   ^
../src/lirc_client.cc:310:46: error: ‘New’ is not a member of ‘v8::String’
   return ThrowException(Exception::TypeError(String::New("Only an Array or a String argument is allowed.")));
                                              ^
../src/lirc_client.cc:310:108: error: ‘ThrowException’ was not declared in this scope
   return ThrowException(Exception::TypeError(String::New("Only an Array or a String argument is allowed.")));
                                                                                                            ^
../src/lirc_client.cc:313:19: error: too few arguments to function ‘v8::Handle<v8::Primitive> v8::Undefined(v8::Isolate*)’
  return Undefined();
                   ^
In file included from /home/rbong/.nw-gyp/0.12.0/src/node.h:55:0,
                 from ../src/lirc_client.cc:7:
/usr/include/v8.h:312:28: note: declared here
   friend Handle<Primitive> Undefined(Isolate* isolate);
                            ^
../src/lirc_client.cc: At global scope:
../src/lirc_client.cc:316:41: error: ‘Arguments’ does not name a type
 static Handle<Value> ClearConfig (const Arguments& args) {
                                         ^
In file included from /home/rbong/.nw-gyp/0.12.0/src/node.h:55:0,
                 from ../src/lirc_client.cc:7:
/usr/include/v8.h: In function ‘v8::Handle<v8::Value> ClearConfig(const int&)’:
/usr/include/v8.h:832:13: error: ‘v8::HandleScope::HandleScope()’ is protected
   V8_INLINE HandleScope() {}
             ^
../src/lirc_client.cc:317:14: error: within this context
  HandleScope scope;
              ^
../src/lirc_client.cc:321:19: error: too few arguments to function ‘v8::Handle<v8::Primitive> v8::Undefined(v8::Isolate*)’
  return Undefined();
                   ^
In file included from /home/rbong/.nw-gyp/0.12.0/src/node.h:55:0,
                 from ../src/lirc_client.cc:7:
/usr/include/v8.h:312:28: note: declared here
   friend Handle<Primitive> Undefined(Isolate* isolate);
                            ^
../src/lirc_client.cc: At global scope:
../src/lirc_client.cc:325:51: error: ‘AccessorInfo’ does not name a type
                                             const AccessorInfo& info) {
                                                   ^
In file included from /home/rbong/.nw-gyp/0.12.0/src/node.h:55:0,
                 from ../src/lirc_client.cc:7:
/usr/include/v8.h: In function ‘v8::Handle<v8::Value> IsConnectedGetter(v8::Local<v8::String>, const int&)’:
/usr/include/v8.h:832:13: error: ‘v8::HandleScope::HandleScope()’ is protected
   V8_INLINE HandleScope() {}
             ^
../src/lirc_client.cc:328:14: error: within this context
  HandleScope scope;
              ^
../src/lirc_client.cc:330:15: error: ‘class v8::HandleScope’ has no member named ‘Close’
  return scope.Close(Boolean::New(!closed));
               ^
../src/lirc_client.cc:330:41: error: no matching function for call to ‘v8::Boolean::New(bool)’
  return scope.Close(Boolean::New(!closed));
                                         ^
../src/lirc_client.cc:330:41: note: candidate is:
In file included from /home/rbong/.nw-gyp/0.12.0/src/node.h:55:0,
                 from ../src/lirc_client.cc:7:
/usr/include/v8.h:6691:17: note: static v8::Handle<v8::Boolean> v8::Boolean::New(v8::Isolate*, bool)
 Handle<Boolean> Boolean::New(Isolate* isolate, bool value) {
                 ^
/usr/include/v8.h:6691:17: note:   candidate expects 2 arguments, 1 provided
../src/lirc_client.cc: At global scope:
../src/lirc_client.cc:334:51: error: ‘AccessorInfo’ does not name a type
                                             const AccessorInfo& info) {
                                                   ^
In file included from /home/rbong/.nw-gyp/0.12.0/src/node.h:55:0,
                 from ../src/lirc_client.cc:7:
/usr/include/v8.h: In function ‘v8::Handle<v8::Value> ModeGetter(v8::Local<v8::String>, const int&)’:
/usr/include/v8.h:832:13: error: ‘v8::HandleScope::HandleScope()’ is protected
   V8_INLINE HandleScope() {}
             ^
../src/lirc_client.cc:337:14: error: within this context
  HandleScope scope;
              ^
../src/lirc_client.cc:345:20: error: too few arguments to function ‘v8::Handle<v8::Primitive> v8::Undefined(v8::Isolate*)’
   return Undefined();
                    ^
In file included from /home/rbong/.nw-gyp/0.12.0/src/node.h:55:0,
                 from ../src/lirc_client.cc:7:
/usr/include/v8.h:312:28: note: declared here
   friend Handle<Primitive> Undefined(Isolate* isolate);
                            ^
../src/lirc_client.cc:348:16: error: ‘class v8::HandleScope’ has no member named ‘Close’
   return scope.Close(String::New(mode_, strlen(mode_)));
                ^
../src/lirc_client.cc:348:22: error: ‘New’ is not a member of ‘v8::String’
   return scope.Close(String::New(mode_, strlen(mode_)));
                      ^
../src/lirc_client.cc: At global scope:
../src/lirc_client.cc:353:51: error: ‘AccessorInfo’ does not name a type
                                             const AccessorInfo& info) {
                                                   ^
In file included from /home/rbong/.nw-gyp/0.12.0/src/node.h:55:0,
                 from ../src/lirc_client.cc:7:
/usr/include/v8.h: In function ‘void ModeSetter(v8::Local<v8::String>, v8::Local<v8::Value>, const int&)’:
/usr/include/v8.h:832:13: error: ‘v8::HandleScope::HandleScope()’ is protected
   V8_INLINE HandleScope() {}
             ^
../src/lirc_client.cc:356:14: error: within this context
  HandleScope scope;
              ^
../src/lirc_client.cc:359:39: error: ‘New’ is not a member of ‘v8::String’
   ThrowException(Exception::TypeError(String::New("Mode should be a string value")));
                                       ^
../src/lirc_client.cc:359:84: error: ‘ThrowException’ was not declared in this scope
   ThrowException(Exception::TypeError(String::New("Mode should be a string value")));
                                                                                    ^
../src/lirc_client.cc:369:39: error: ‘New’ is not a member of ‘v8::String’
   ThrowException(Exception::TypeError(String::New("Cannot set mode on empty config")));
                                       ^
../src/lirc_client.cc:369:86: error: ‘ThrowException’ was not declared in this scope
   ThrowException(Exception::TypeError(String::New("Cannot set mode on empty config")));
                                                                                      ^
../src/lirc_client.cc: At global scope:
../src/lirc_client.cc:375:51: error: ‘AccessorInfo’ does not name a type
                                             const AccessorInfo& info) {
                                                   ^
In file included from /home/rbong/.nw-gyp/0.12.0/src/node.h:55:0,
                 from ../src/lirc_client.cc:7:
/usr/include/v8.h: In function ‘v8::Handle<v8::Value> ConfigFilesGetter(v8::Local<v8::String>, const int&)’:
/usr/include/v8.h:832:13: error: ‘v8::HandleScope::HandleScope()’ is protected
   V8_INLINE HandleScope() {}
             ^
../src/lirc_client.cc:378:14: error: within this context
  HandleScope scope;
              ^
../src/lirc_client.cc:380:15: error: ‘class v8::HandleScope’ has no member named ‘Close’
  return scope.Close(configFiles_);
               ^
In file included from /home/rbong/.nw-gyp/0.12.0/src/node.h:55:0,
                 from ../src/lirc_client.cc:7:
/usr/include/v8.h: In function ‘void io_event(uv_poll_t*, int, int)’:
/usr/include/v8.h:832:13: error: ‘v8::HandleScope::HandleScope()’ is protected
   V8_INLINE HandleScope() {}
             ^
../src/lirc_client.cc:385:14: error: within this context
  HandleScope scope;
              ^
../src/lirc_client.cc:402:6: error: ‘New’ is not a member of ‘v8::String’
      String::New(code, strlen(code))
      ^
../src/lirc_client.cc:405:14: error: base operand of ‘->’ has non-pointer type ‘v8::Persistent<v8::Function>’
     global_cb->Call(Context::GetCurrent()->Global(), 2, emit_argv);
              ^
../src/lirc_client.cc:405:21: error: ‘GetCurrent’ is not a member of ‘v8::Context’
     global_cb->Call(Context::GetCurrent()->Global(), 2, emit_argv);
                     ^
../src/lirc_client.cc:415:9: error: ‘New’ is not a member of ‘v8::String’
         String::New(c, strlen(c)),
         ^
../src/lirc_client.cc:416:21: error: base operand of ‘->’ has non-pointer type ‘v8::Persistent<v8::Array>’
         configFiles_->Get(i)
                     ^
../src/lirc_client.cc:419:17: error: base operand of ‘->’ has non-pointer type ‘v8::Persistent<v8::Function>’
        global_cb->Call(Context::GetCurrent()->Global(), 3, emit_argv);
                 ^
../src/lirc_client.cc:419:24: error: ‘GetCurrent’ is not a member of ‘v8::Context’
        global_cb->Call(Context::GetCurrent()->Global(), 3, emit_argv);
                        ^
../src/lirc_client.cc:435:4: error: conversion from ‘v8::Persistent<v8::String>’ to non-scalar type ‘v8::Handle<v8::Value>’ requested
    };
    ^
../src/lirc_client.cc:437:13: error: base operand of ‘->’ has non-pointer type ‘v8::Persistent<v8::Function>’
    global_cb->Call(Context::GetCurrent()->Global(), 1, emit_argv);
             ^
../src/lirc_client.cc:437:20: error: ‘GetCurrent’ is not a member of ‘v8::Context’
    global_cb->Call(Context::GetCurrent()->Global(), 1, emit_argv);
                    ^
In file included from /home/rbong/.nw-gyp/0.12.0/src/node.h:55:0,
                 from ../src/lirc_client.cc:7:
/usr/include/v8.h: In function ‘void init(v8::Handle<v8::Object>)’:
/usr/include/v8.h:832:13: error: ‘v8::HandleScope::HandleScope()’ is protected
   V8_INLINE HandleScope() {}
             ^
../src/lirc_client.cc:447:14: error: within this context
  HandleScope scope;
              ^
../src/lirc_client.cc:451:35: error: ‘NODE_PSYMBOL’ was not declared in this scope
  emit_symbol = NODE_PSYMBOL("emit");
                                   ^
../src/lirc_client.cc:460:14: error: ‘NewSymbol’ is not a member of ‘v8::String’
  target->Set(String::NewSymbol("close"), FunctionTemplate::New(Close)->GetFunction());
              ^
../src/lirc_client.cc:460:69: error: no matching function for call to ‘v8::FunctionTemplate::New(v8::Handle<v8::Value> (&)(const int&))’
  target->Set(String::NewSymbol("close"), FunctionTemplate::New(Close)->GetFunction());
                                                                     ^
../src/lirc_client.cc:460:69: note: candidate is:
In file included from /home/rbong/.nw-gyp/0.12.0/src/node.h:55:0,
                 from ../src/lirc_client.cc:7:
/usr/include/v8.h:3696:34: note: static v8::Local<v8::FunctionTemplate> v8::FunctionTemplate::New(v8::Isolate*, v8::FunctionCallback, v8::Handle<v8::Value>, v8::Handle<v8::Signature>, int)
   static Local<FunctionTemplate> New(
                                  ^
/usr/include/v8.h:3696:34: note:   no known conversion for argument 1 from ‘v8::Handle<v8::Value>(const int&)’ to ‘v8::Isolate*’
../src/lirc_client.cc:461:14: error: ‘NewSymbol’ is not a member of ‘v8::String’
  target->Set(String::NewSymbol("connect"), FunctionTemplate::New(Connect)->GetFunction());
              ^
../src/lirc_client.cc:461:73: error: no matching function for call to ‘v8::FunctionTemplate::New(v8::Handle<v8::Value> (&)(const int&))’
  target->Set(String::NewSymbol("connect"), FunctionTemplate::New(Connect)->GetFunction());
                                                                         ^
../src/lirc_client.cc:461:73: note: candidate is:
In file included from /home/rbong/.nw-gyp/0.12.0/src/node.h:55:0,
                 from ../src/lirc_client.cc:7:
/usr/include/v8.h:3696:34: note: static v8::Local<v8::FunctionTemplate> v8::FunctionTemplate::New(v8::Isolate*, v8::FunctionCallback, v8::Handle<v8::Value>, v8::Handle<v8::Signature>, int)
   static Local<FunctionTemplate> New(
                                  ^
/usr/include/v8.h:3696:34: note:   no known conversion for argument 1 from ‘v8::Handle<v8::Value>(const int&)’ to ‘v8::Isolate*’
../src/lirc_client.cc:462:14: error: ‘NewSymbol’ is not a member of ‘v8::String’
  target->Set(String::NewSymbol("reConnect"), FunctionTemplate::New(ReConnect)->GetFunction());
              ^
../src/lirc_client.cc:462:77: error: no matching function for call to ‘v8::FunctionTemplate::New(v8::Handle<v8::Value> (&)(const int&))’
  target->Set(String::NewSymbol("reConnect"), FunctionTemplate::New(ReConnect)->GetFunction());
                                                                             ^
../src/lirc_client.cc:462:77: note: candidate is:
In file included from /home/rbong/.nw-gyp/0.12.0/src/node.h:55:0,
                 from ../src/lirc_client.cc:7:
/usr/include/v8.h:3696:34: note: static v8::Local<v8::FunctionTemplate> v8::FunctionTemplate::New(v8::Isolate*, v8::FunctionCallback, v8::Handle<v8::Value>, v8::Handle<v8::Signature>, int)
   static Local<FunctionTemplate> New(
                                  ^
/usr/include/v8.h:3696:34: note:   no known conversion for argument 1 from ‘v8::Handle<v8::Value>(const int&)’ to ‘v8::Isolate*’
../src/lirc_client.cc:463:14: error: ‘NewSymbol’ is not a member of ‘v8::String’
  target->Set(String::NewSymbol("addConfig"), FunctionTemplate::New(AddConfig)->GetFunction());
              ^
../src/lirc_client.cc:463:77: error: no matching function for call to ‘v8::FunctionTemplate::New(v8::Handle<v8::Value> (&)(const int&))’
  target->Set(String::NewSymbol("addConfig"), FunctionTemplate::New(AddConfig)->GetFunction());
                                                                             ^
../src/lirc_client.cc:463:77: note: candidate is:
In file included from /home/rbong/.nw-gyp/0.12.0/src/node.h:55:0,
                 from ../src/lirc_client.cc:7:
/usr/include/v8.h:3696:34: note: static v8::Local<v8::FunctionTemplate> v8::FunctionTemplate::New(v8::Isolate*, v8::FunctionCallback, v8::Handle<v8::Value>, v8::Handle<v8::Signature>, int)
   static Local<FunctionTemplate> New(
                                  ^
/usr/include/v8.h:3696:34: note:   no known conversion for argument 1 from ‘v8::Handle<v8::Value>(const int&)’ to ‘v8::Isolate*’
../src/lirc_client.cc:464:14: error: ‘NewSymbol’ is not a member of ‘v8::String’
  target->Set(String::NewSymbol("clearConfig"), FunctionTemplate::New(ClearConfig)->GetFunction());
              ^
../src/lirc_client.cc:464:81: error: no matching function for call to ‘v8::FunctionTemplate::New(v8::Handle<v8::Value> (&)(const int&))’
  target->Set(String::NewSymbol("clearConfig"), FunctionTemplate::New(ClearConfig)->GetFunction());
                                                                                 ^
../src/lirc_client.cc:464:81: note: candidate is:
In file included from /home/rbong/.nw-gyp/0.12.0/src/node.h:55:0,
                 from ../src/lirc_client.cc:7:
/usr/include/v8.h:3696:34: note: static v8::Local<v8::FunctionTemplate> v8::FunctionTemplate::New(v8::Isolate*, v8::FunctionCallback, v8::Handle<v8::Value>, v8::Handle<v8::Signature>, int)
   static Local<FunctionTemplate> New(
                                  ^
/usr/include/v8.h:3696:34: note:   no known conversion for argument 1 from ‘v8::Handle<v8::Value>(const int&)’ to ‘v8::Isolate*’
../src/lirc_client.cc:466:59: error: no matching function for call to ‘v8::Object::SetAccessor(v8::Persistent<v8::String>&, v8::Handle<v8::Value> (&)(v8::Local<v8::String>, const int&))’
  target->SetAccessor(isConnected_symbol, IsConnectedGetter);
                                                           ^
../src/lirc_client.cc:466:59: note: candidates are:
In file included from /home/rbong/.nw-gyp/0.12.0/src/node.h:55:0,
                 from ../src/lirc_client.cc:7:
/usr/include/v8.h:2375:8: note: bool v8::Object::SetAccessor(v8::Handle<v8::String>, v8::AccessorGetterCallback, v8::AccessorSetterCallback, v8::Handle<v8::Value>, v8::AccessControl, v8::PropertyAttribute)
   bool SetAccessor(Handle<String> name,
        ^
/usr/include/v8.h:2375:8: note:   no known conversion for argument 1 from ‘v8::Persistent<v8::String>’ to ‘v8::Handle<v8::String>’
/usr/include/v8.h:2381:8: note: bool v8::Object::SetAccessor(v8::Handle<v8::Name>, v8::AccessorNameGetterCallback, v8::AccessorNameSetterCallback, v8::Handle<v8::Value>, v8::AccessControl, v8::PropertyAttribute)
   bool SetAccessor(Handle<Name> name,
        ^
/usr/include/v8.h:2381:8: note:   no known conversion for argument 1 from ‘v8::Persistent<v8::String>’ to ‘v8::Handle<v8::Name>’
../src/lirc_client.cc:467:57: error: no matching function for call to ‘v8::Object::SetAccessor(v8::Persistent<v8::String>&, v8::Handle<v8::Value> (&)(v8::Local<v8::String>, const int&), void (&)(v8::Local<v8::String>, v8::Local<v8::Value>, const int&))’
  target->SetAccessor(mode_symbol, ModeGetter, ModeSetter);
                                                         ^
../src/lirc_client.cc:467:57: note: candidates are:
In file included from /home/rbong/.nw-gyp/0.12.0/src/node.h:55:0,
                 from ../src/lirc_client.cc:7:
/usr/include/v8.h:2375:8: note: bool v8::Object::SetAccessor(v8::Handle<v8::String>, v8::AccessorGetterCallback, v8::AccessorSetterCallback, v8::Handle<v8::Value>, v8::AccessControl, v8::PropertyAttribute)
   bool SetAccessor(Handle<String> name,
        ^
/usr/include/v8.h:2375:8: note:   no known conversion for argument 1 from ‘v8::Persistent<v8::String>’ to ‘v8::Handle<v8::String>’
/usr/include/v8.h:2381:8: note: bool v8::Object::SetAccessor(v8::Handle<v8::Name>, v8::AccessorNameGetterCallback, v8::AccessorNameSetterCallback, v8::Handle<v8::Value>, v8::AccessControl, v8::PropertyAttribute)
   bool SetAccessor(Handle<Name> name,
        ^
/usr/include/v8.h:2381:8: note:   no known conversion for argument 1 from ‘v8::Persistent<v8::String>’ to ‘v8::Handle<v8::Name>’
../src/lirc_client.cc:468:59: error: no matching function for call to ‘v8::Object::SetAccessor(v8::Persistent<v8::String>&, v8::Handle<v8::Value> (&)(v8::Local<v8::String>, const int&))’
  target->SetAccessor(configFiles_symbol, ConfigFilesGetter);
                                                           ^
../src/lirc_client.cc:468:59: note: candidates are:
In file included from /home/rbong/.nw-gyp/0.12.0/src/node.h:55:0,
                 from ../src/lirc_client.cc:7:
/usr/include/v8.h:2375:8: note: bool v8::Object::SetAccessor(v8::Handle<v8::String>, v8::AccessorGetterCallback, v8::AccessorSetterCallback, v8::Handle<v8::Value>, v8::AccessControl, v8::PropertyAttribute)
   bool SetAccessor(Handle<String> name,
        ^
/usr/include/v8.h:2375:8: note:   no known conversion for argument 1 from ‘v8::Persistent<v8::String>’ to ‘v8::Handle<v8::String>’
/usr/include/v8.h:2381:8: note: bool v8::Object::SetAccessor(v8::Handle<v8::Name>, v8::AccessorNameGetterCallback, v8::AccessorNameSetterCallback, v8::Handle<v8::Value>, v8::AccessControl, v8::PropertyAttribute)
   bool SetAccessor(Handle<Name> name,
        ^
/usr/include/v8.h:2381:8: note:   no known conversion for argument 1 from ‘v8::Persistent<v8::String>’ to ‘v8::Handle<v8::Name>’
lirc_client.target.mk:90: recipe for target 'Release/obj.target/lirc_client/src/lirc_client.o' failed
make: *** [Release/obj.target/lirc_client/src/lirc_client.o] Error 1
make: Leaving directory '/home/rbong/programs/lircjs/node-lirc_client/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/nw-gyp/lib/build.js:267:23)
gyp ERR! stack     at ChildProcess.emit (events.js:110:17)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (child_process.js:1074:12)
gyp ERR! System Linux 3.19.3-3-ARCH
gyp ERR! command "node" "/usr/bin/nw-gyp" "rebuild" "--target=0.12.0"
gyp ERR! cwd /home/rbong/programs/lircjs/node-lirc_client
gyp ERR! node -v v0.12.4
gyp ERR! nw-gyp -v v0.12.2
gyp ERR! not ok 

Clearly v8 is not happy. What am I missing? Is there a compile flag I need? Did v8 change its syntax?

I am exploring the possibility that the v8 dependency needs to be set properly for gyp to manage, and I'll continue experimenting.

rbong commented 9 years ago

This issue came from running nw-gyp instead of node-gyp.

rbong commented 9 years ago

I was incorrect, it still does not build.

rbong commented 9 years ago

v8 has indeed had a slight change in syntax. I am now porting this library to the newer version.

rbong commented 9 years ago

My port is completed. It has a whole slew of issues. Clearly the new version of v8 makes more than a shallow change. If you need to use these bindings, use

npm i --target=0.10.36

As for using the latest version of node, I would wait until it's more mature.