Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Does not compile on Node v4.2.1 #8

Closed
danpalmer opened this issue Oct 18, 2015 · 1 comment
Closed

Does not compile on Node v4.2.1 #8

danpalmer opened this issue Oct 18, 2015 · 1 comment

Comments

@danpalmer
Copy link

I'm sorry I don't have more time to figure this out, but I'm not a Node person (just using this library for the chromecast-osx-audio package), and I've managed to get this working by just using the Node version specified in the Readme.

npm WARN engine osx-audio@0.2.1: wanted: {"node":">=0.10.30 <0.12"} (current: {"node":"4.2.1","npm":"2.14.7"})

> osx-audio@0.2.1 install /usr/local/lib/node_modules/osx-audio
> node-gyp rebuild

  CXX(target) Release/obj.target/audio/src/bindings.o
../src/bindings.cc:113:42: error: no type named 'Arguments' in namespace 'v8'; did you mean 'v8::internal::Arguments'?
                static v8::Handle<v8::Value> New(const v8::Arguments& args)
                                                       ^~~~~~~~~~~~~
                                                       v8::internal::Arguments
/Users/dan/.node-gyp/4.2.1/include/node/v8.h:139:7: note: 'v8::internal::Arguments' declared here
class Arguments;
      ^
../src/bindings.cc:129:48: error: no type named 'Arguments' in namespace 'v8'; did you mean 'v8::internal::Arguments'?
                static v8::Handle<v8::Value> OpenInput(const v8::Arguments& args)
                                                             ^~~~~~~~~~~~~
                                                             v8::internal::Arguments
/Users/dan/.node-gyp/4.2.1/include/node/v8.h:139:7: note: 'v8::internal::Arguments' declared here
class Arguments;
      ^
../src/bindings.cc:139:49: error: no type named 'Arguments' in namespace 'v8'; did you mean 'v8::internal::Arguments'?
                static v8::Handle<v8::Value> CloseInput(const v8::Arguments& args)
                                                              ^~~~~~~~~~~~~
                                                              v8::internal::Arguments
/Users/dan/.node-gyp/4.2.1/include/node/v8.h:139:7: note: 'v8::internal::Arguments' declared here
class Arguments;
      ^
../src/bindings.cc:149:45: error: no type named 'Arguments' in namespace 'v8'; did you mean 'v8::internal::Arguments'?
                static v8::Handle<v8::Value> IsOpen(const v8::Arguments& args)
                                                          ^~~~~~~~~~~~~
                                                          v8::internal::Arguments
/Users/dan/.node-gyp/4.2.1/include/node/v8.h:139:7: note: 'v8::internal::Arguments' declared here
class Arguments;
      ^
../src/bindings.cc:43:20: error: calling a protected constructor of class 'v8::HandleScope'
                        v8::HandleScope scope;
                                        ^
/Users/dan/.node-gyp/4.2.1/include/node/v8.h:885:13: note: declared protected here
  V8_INLINE HandleScope() {}
            ^
../src/bindings.cc:45:66: error: cannot initialize a parameter of type 'v8::Isolate *' with an lvalue of type 'v8::Handle<v8::Value>
      (const v8::internal::Arguments &)'
                        v8::Local<v8::FunctionTemplate> t = v8::FunctionTemplate::New(New);
                                                                                      ^~~
/Users/dan/.node-gyp/4.2.1/include/node/v8.h:4350:16: note: passing argument to parameter 'isolate' here
      Isolate* isolate, FunctionCallback callback = 0,
               ^
../src/bindings.cc:47:49: error: 'New' is a private member of 'v8::PersistentBase<v8::FunctionTemplate>'
                        s_ct = v8::Persistent<v8::FunctionTemplate>::New(t);
                                                                     ^
/Users/dan/.node-gyp/4.2.1/include/node/v8.h:639:23: note: declared private here
  V8_INLINE static T* New(Isolate* isolate, T* that);
                      ^
../src/bindings.cc:47:11: error: too few arguments to function call, expected 2, have 1; did you mean '::AudioInput::New'?
                        s_ct = v8::Persistent<v8::FunctionTemplate>::New(t);
                               ^~
                               ::AudioInput::New
../src/bindings.cc:113:32: note: '::AudioInput::New' declared here
                static v8::Handle<v8::Value> New(const v8::Arguments& args)
                                             ^
../src/bindings.cc:48:8: error: member reference type 'v8::Persistent<v8::FunctionTemplate>' is not a pointer; maybe you meant to use '.'?
                        s_ct->InstanceTemplate()->SetInternalFieldCount(1);
                        ~~~~^~
                            .
../src/bindings.cc:48:10: error: no member named 'InstanceTemplate' in 'v8::Persistent<v8::FunctionTemplate,
      v8::NonCopyablePersistentTraits<v8::FunctionTemplate> >'
                        s_ct->InstanceTemplate()->SetInternalFieldCount(1);
                        ~~~~  ^
../src/bindings.cc:50:8: error: member reference type 'v8::Persistent<v8::FunctionTemplate>' is not a pointer; maybe you meant to use '.'?
                        s_ct->SetClassName(v8::String::NewSymbol("AudioInput"));
                        ~~~~^~
                            .
../src/bindings.cc:50:10: error: no member named 'SetClassName' in 'v8::Persistent<v8::FunctionTemplate,
      v8::NonCopyablePersistentTraits<v8::FunctionTemplate> >'
                        s_ct->SetClassName(v8::String::NewSymbol("AudioInput"));
                        ~~~~  ^
../src/bindings.cc:50:35: error: no member named 'NewSymbol' in 'v8::String'
                        s_ct->SetClassName(v8::String::NewSymbol("AudioInput"));
                                           ~~~~~~~~~~~~^
../src/bindings.cc:52:30: error: no viable conversion from 'v8::Persistent<v8::FunctionTemplate>' to 'v8::Local<v8::FunctionTemplate>'
                        NODE_SET_PROTOTYPE_METHOD(s_ct, "openInput", OpenInput);
                                                  ^~~~
/Users/dan/.node-gyp/4.2.1/include/node/v8.h:210:7: note: candidate constructor (the implicit copy constructor) not viable: no known conversion from
      'v8::Persistent<v8::FunctionTemplate>' to 'const v8::Local<v8::FunctionTemplate> &' for 1st argument
class Local {
      ^
/Users/dan/.node-gyp/4.2.1/include/node/v8.h:210:7: note: candidate constructor (the implicit move constructor) not viable: no known conversion from
      'v8::Persistent<v8::FunctionTemplate>' to 'v8::Local<v8::FunctionTemplate> &&' for 1st argument
class Local {
      ^
/Users/dan/.node-gyp/4.2.1/include/node/v8.h:214:13: note: candidate template ignored: could not match 'Local' against 'Persistent'
  V8_INLINE Local(Local<S> that)
            ^
/Users/dan/.node-gyp/4.2.1/include/node/v8.h:326:13: note: candidate template ignored: could not match 'S *' against 'v8::Persistent<v8::FunctionTemplate>'
  V8_INLINE Local(S* that)
            ^
/Users/dan/.node-gyp/4.2.1/include/node/node.h:252:71: note: passing argument to parameter 'recv' here
inline void NODE_SET_PROTOTYPE_METHOD(v8::Local<v8::FunctionTemplate> recv,
                                                                      ^
../src/bindings.cc:53:30: error: no viable conversion from 'v8::Persistent<v8::FunctionTemplate>' to 'v8::Local<v8::FunctionTemplate>'
                        NODE_SET_PROTOTYPE_METHOD(s_ct, "closeInput", CloseInput);
                                                  ^~~~
/Users/dan/.node-gyp/4.2.1/include/node/v8.h:210:7: note: candidate constructor (the implicit copy constructor) not viable: no known conversion from
      'v8::Persistent<v8::FunctionTemplate>' to 'const v8::Local<v8::FunctionTemplate> &' for 1st argument
class Local {
      ^
/Users/dan/.node-gyp/4.2.1/include/node/v8.h:210:7: note: candidate constructor (the implicit move constructor) not viable: no known conversion from
      'v8::Persistent<v8::FunctionTemplate>' to 'v8::Local<v8::FunctionTemplate> &&' for 1st argument
class Local {
      ^
/Users/dan/.node-gyp/4.2.1/include/node/v8.h:214:13: note: candidate template ignored: could not match 'Local' against 'Persistent'
  V8_INLINE Local(Local<S> that)
            ^
/Users/dan/.node-gyp/4.2.1/include/node/v8.h:326:13: note: candidate template ignored: could not match 'S *' against 'v8::Persistent<v8::FunctionTemplate>'
  V8_INLINE Local(S* that)
            ^
/Users/dan/.node-gyp/4.2.1/include/node/node.h:252:71: note: passing argument to parameter 'recv' here
inline void NODE_SET_PROTOTYPE_METHOD(v8::Local<v8::FunctionTemplate> recv,
                                                                      ^
../src/bindings.cc:54:30: error: no viable conversion from 'v8::Persistent<v8::FunctionTemplate>' to 'v8::Local<v8::FunctionTemplate>'
                        NODE_SET_PROTOTYPE_METHOD(s_ct, "isOpen", IsOpen);
                                                  ^~~~
/Users/dan/.node-gyp/4.2.1/include/node/v8.h:210:7: note: candidate constructor (the implicit copy constructor) not viable: no known conversion from
      'v8::Persistent<v8::FunctionTemplate>' to 'const v8::Local<v8::FunctionTemplate> &' for 1st argument
class Local {
      ^
/Users/dan/.node-gyp/4.2.1/include/node/v8.h:210:7: note: candidate constructor (the implicit move constructor) not viable: no known conversion from
      'v8::Persistent<v8::FunctionTemplate>' to 'v8::Local<v8::FunctionTemplate> &&' for 1st argument
class Local {
      ^
/Users/dan/.node-gyp/4.2.1/include/node/v8.h:214:13: note: candidate template ignored: could not match 'Local' against 'Persistent'
  V8_INLINE Local(Local<S> that)
            ^
/Users/dan/.node-gyp/4.2.1/include/node/v8.h:326:13: note: candidate template ignored: could not match 'S *' against 'v8::Persistent<v8::FunctionTemplate>'
  V8_INLINE Local(S* that)
            ^
/Users/dan/.node-gyp/4.2.1/include/node/node.h:252:71: note: passing argument to parameter 'recv' here
inline void NODE_SET_PROTOTYPE_METHOD(v8::Local<v8::FunctionTemplate> recv,
                                                                      ^
../src/bindings.cc:57:10: error: member reference type 'v8::Persistent<v8::FunctionTemplate>' is not a pointer; maybe you meant to use '.'?
                                        s_ct->GetFunction());
                                        ~~~~^~
                                            .
../src/bindings.cc:57:12: error: no member named 'GetFunction' in 'v8::Persistent<v8::FunctionTemplate,
      v8::NonCopyablePersistentTraits<v8::FunctionTemplate> >'
                                        s_ct->GetFunction());
                                        ~~~~  ^
../src/bindings.cc:56:28: error: no member named 'NewSymbol' in 'v8::String'
                        target->Set(v8::String::NewSymbol("input"),
                                    ~~~~~~~~~~~~^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
make: *** [Release/obj.target/audio/src/bindings.o] Error 1
gyp ERR! build error 
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack     at ChildProcess.onExit (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:270:23)
gyp ERR! stack     at emitTwo (events.js:87:13)
gyp ERR! stack     at ChildProcess.emit (events.js:172:7)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:200:12)
gyp ERR! System Darwin 15.0.0
gyp ERR! command "/usr/local/Cellar/node/4.2.1/bin/node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /usr/local/lib/node_modules/osx-audio
gyp ERR! node -v v4.2.1
gyp ERR! node-gyp -v v3.0.3
gyp ERR! not ok 
npm ERR! Darwin 15.0.0
npm ERR! argv "/usr/local/Cellar/node/4.2.1/bin/node" "/usr/local/bin/npm" "install" "-g" "osx-audio"
npm ERR! node v4.2.1
npm ERR! npm  v2.14.7
npm ERR! code ELIFECYCLE

npm ERR! osx-audio@0.2.1 install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the osx-audio@0.2.1 install script 'node-gyp rebuild'.
npm ERR! This is most likely a problem with the osx-audio package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     node-gyp rebuild
npm ERR! You can get their info via:
npm ERR!     npm owner ls osx-audio
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR!     /Users/dan/Code/code_review/backend/npm-debug.log
@fardog
Copy link
Owner

fardog commented Oct 22, 2015

This is a known issue; only 0.10.x is supported for now, I'm afraid. A new version requires a port of the native bindings to nan but it's not something i'm able to take at this time.

Addressed in #7 (help is wanted!)

@fardog fardog closed this as completed Oct 22, 2015
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants