Does not compile on Node v4.2.1
Closed this issue · 1 comments
danpalmer commented
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