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

v8-debug@0.7.7 fails to build #14411

Closed
mhornbacher opened this issue Jul 21, 2017 · 6 comments
Closed

v8-debug@0.7.7 fails to build #14411

mhornbacher opened this issue Jul 21, 2017 · 6 comments
Labels
question Issues that look for answers.

Comments

@mhornbacher
Copy link

Here is a full log of the issue. sudo and nvm both have not been able to get around it.

node-pre-gyp ERR! Tried to download(404): https://node-inspector.s3.amazonaws.com/debug/v0.7.7/node-v57-linux-x64.tar.gz 
node-pre-gyp ERR! Pre-built binaries not found for v8-debug@0.7.7 and node@8.2.1 (node-v57 ABI) (falling back to source compile with node-gyp) 
make: Entering directory '/home/menachem/code/labs/redux-reducer-v-000/node_modules/v8-debug/build'
  CXX(target) Release/obj.target/debug/src/debug.o
../src/debug.cc: In static member function ‘static Nan::NAN_METHOD_RETURN_TYPE nodex::Debug::Call(Nan::NAN_METHOD_ARGS_TYPE)’:
../src/debug.cc:38:20: warning: ‘static v8::MaybeLocal<v8::Value> v8::Debug::Call(v8::Local<v8::Context>, v8::Local<v8::Function>, v8::Local<v8::Value>)’ is deprecated: No longer supported [-Wdeprecated-declarations]
         v8::Debug::Call(fn);
                    ^~~~
In file included from /home/menachem/.node-gyp/8.2.1/include/node/v8.h:26:0,
                 from /home/menachem/.node-gyp/8.2.1/include/node/v8-debug.h:8,
                 from ../src/debug.cc:1:
/home/menachem/.node-gyp/8.2.1/include/node/v8-debug.h:193:42: note: declared here
                 static MaybeLocal<Value> Call(
                                          ^
/home/menachem/.node-gyp/8.2.1/include/node/v8config.h:329:3: note: in definition of macro ‘V8_DEPRECATED’
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
../src/debug.cc:38:27: error: no matching function for call to ‘v8::Debug::Call(v8::Local<v8::Function>&)’
         v8::Debug::Call(fn);
                           ^
In file included from /home/menachem/.node-gyp/8.2.1/include/node/v8.h:26:0,
                 from /home/menachem/.node-gyp/8.2.1/include/node/v8-debug.h:8,
                 from ../src/debug.cc:1:
/home/menachem/.node-gyp/8.2.1/include/node/v8-debug.h:193:42: note: candidate: static v8::MaybeLocal<v8::Value> v8::Debug::Call(v8::Local<v8::Context>, v8::Local<v8::Function>, v8::Local<v8::Value>)
                 static MaybeLocal<Value> Call(
                                          ^
/home/menachem/.node-gyp/8.2.1/include/node/v8config.h:329:3: note: in definition of macro ‘V8_DEPRECATED’
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
/home/menachem/.node-gyp/8.2.1/include/node/v8-debug.h:193:42: note:   candidate expects 3 arguments, 1 provided
                 static MaybeLocal<Value> Call(
                                          ^
/home/menachem/.node-gyp/8.2.1/include/node/v8config.h:329:3: note: in definition of macro ‘V8_DEPRECATED’
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
../src/debug.cc: In static member function ‘static Nan::NAN_METHOD_RETURN_TYPE nodex::Debug::SendCommand(Nan::NAN_METHOD_ARGS_TYPE)’:
../src/debug.cc:46:45: warning: ‘static v8::Local<v8::Context> v8::Debug::GetDebugContext(v8::Isolate*)’ is deprecated: Use v8-inspector [-Wdeprecated-declarations]
         Isolate* debug_isolate = v8::Debug::GetDebugContext()->GetIsolate();
                                             ^~~~~~~~~~~~~~~
In file included from /home/menachem/.node-gyp/8.2.1/include/node/v8.h:26:0,
                 from /home/menachem/.node-gyp/8.2.1/include/node/v8-debug.h:8,
                 from ../src/debug.cc:1:
/home/menachem/.node-gyp/8.2.1/include/node/v8-debug.h:209:39: note: declared here
                 static Local<Context> GetDebugContext(Isolate* isolate));
                                       ^
/home/menachem/.node-gyp/8.2.1/include/node/v8config.h:329:3: note: in definition of macro ‘V8_DEPRECATED’
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
../src/debug.cc:46:61: error: no matching function for call to ‘v8::Debug::GetDebugContext()’
         Isolate* debug_isolate = v8::Debug::GetDebugContext()->GetIsolate();
                                                             ^
In file included from /home/menachem/.node-gyp/8.2.1/include/node/v8.h:26:0,
                 from /home/menachem/.node-gyp/8.2.1/include/node/v8-debug.h:8,
                 from ../src/debug.cc:1:
/home/menachem/.node-gyp/8.2.1/include/node/v8-debug.h:209:39: note: candidate: static v8::Local<v8::Context> v8::Debug::GetDebugContext(v8::Isolate*)
                 static Local<Context> GetDebugContext(Isolate* isolate));
                                       ^
/home/menachem/.node-gyp/8.2.1/include/node/v8config.h:329:3: note: in definition of macro ‘V8_DEPRECATED’
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
/home/menachem/.node-gyp/8.2.1/include/node/v8-debug.h:209:39: note:   candidate expects 1 argument, 0 provided
                 static Local<Context> GetDebugContext(Isolate* isolate));
                                       ^
/home/menachem/.node-gyp/8.2.1/include/node/v8config.h:329:3: note: in definition of macro ‘V8_DEPRECATED’
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
../src/debug.cc:48:20: warning: ‘static void v8::Debug::SendCommand(v8::Isolate*, const uint16_t*, int, v8::Debug::ClientData*)’ is deprecated: No longer supported [-Wdeprecated-declarations]
         v8::Debug::SendCommand(debug_isolate, *command, command.length());
                    ^~~~~~~~~~~
In file included from /home/menachem/.node-gyp/8.2.1/include/node/v8.h:26:0,
                 from /home/menachem/.node-gyp/8.2.1/include/node/v8-debug.h:8,
                 from ../src/debug.cc:1:
/home/menachem/.node-gyp/8.2.1/include/node/v8-debug.h:170:29: note: declared here
                 static void SendCommand(Isolate* isolate,
                             ^
/home/menachem/.node-gyp/8.2.1/include/node/v8config.h:329:3: note: in definition of macro ‘V8_DEPRECATED’
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
../src/debug.cc:48:73: warning: ‘static void v8::Debug::SendCommand(v8::Isolate*, const uint16_t*, int, v8::Debug::ClientData*)’ is deprecated: No longer supported [-Wdeprecated-declarations]
         v8::Debug::SendCommand(debug_isolate, *command, command.length());
                                                                         ^
In file included from /home/menachem/.node-gyp/8.2.1/include/node/v8.h:26:0,
                 from /home/menachem/.node-gyp/8.2.1/include/node/v8-debug.h:8,
                 from ../src/debug.cc:1:
/home/menachem/.node-gyp/8.2.1/include/node/v8-debug.h:170:29: note: declared here
                 static void SendCommand(Isolate* isolate,
                             ^
/home/menachem/.node-gyp/8.2.1/include/node/v8config.h:329:3: note: in definition of macro ‘V8_DEPRECATED’
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
../src/debug.cc: In static member function ‘static Nan::NAN_METHOD_RETURN_TYPE nodex::Debug::RunScript(Nan::NAN_METHOD_ARGS_TYPE)’:
../src/debug.cc:61:51: warning: ‘static v8::Local<v8::Context> v8::Debug::GetDebugContext(v8::Isolate*)’ is deprecated: Use v8-inspector [-Wdeprecated-declarations]
         Local<Context> debug_context = v8::Debug::GetDebugContext();
                                                   ^~~~~~~~~~~~~~~
In file included from /home/menachem/.node-gyp/8.2.1/include/node/v8.h:26:0,
                 from /home/menachem/.node-gyp/8.2.1/include/node/v8-debug.h:8,
                 from ../src/debug.cc:1:
/home/menachem/.node-gyp/8.2.1/include/node/v8-debug.h:209:39: note: declared here
                 static Local<Context> GetDebugContext(Isolate* isolate));
                                       ^
/home/menachem/.node-gyp/8.2.1/include/node/v8config.h:329:3: note: in definition of macro ‘V8_DEPRECATED’
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
../src/debug.cc:61:67: error: no matching function for call to ‘v8::Debug::GetDebugContext()’
         Local<Context> debug_context = v8::Debug::GetDebugContext();
                                                                   ^
In file included from /home/menachem/.node-gyp/8.2.1/include/node/v8.h:26:0,
                 from /home/menachem/.node-gyp/8.2.1/include/node/v8-debug.h:8,
                 from ../src/debug.cc:1:
/home/menachem/.node-gyp/8.2.1/include/node/v8-debug.h:209:39: note: candidate: static v8::Local<v8::Context> v8::Debug::GetDebugContext(v8::Isolate*)
                 static Local<Context> GetDebugContext(Isolate* isolate));
                                       ^
/home/menachem/.node-gyp/8.2.1/include/node/v8config.h:329:3: note: in definition of macro ‘V8_DEPRECATED’
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
/home/menachem/.node-gyp/8.2.1/include/node/v8-debug.h:209:39: note:   candidate expects 1 argument, 0 provided
                 static Local<Context> GetDebugContext(Isolate* isolate));
                                       ^
/home/menachem/.node-gyp/8.2.1/include/node/v8config.h:329:3: note: in definition of macro ‘V8_DEPRECATED’
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
../src/debug.cc:65:11: error: ‘GetMirror’ is not a member of ‘v8::Debug’
           v8::Debug::GetMirror(info.GetIsolate()->GetCurrentContext(), info[0]);
           ^~
../src/debug.cc:66:38: warning: ‘static v8::Local<v8::Context> v8::Debug::GetDebugContext(v8::Isolate*)’ is deprecated: Use v8-inspector [-Wdeprecated-declarations]
           debug_context = v8::Debug::GetDebugContext();
                                      ^~~~~~~~~~~~~~~
In file included from /home/menachem/.node-gyp/8.2.1/include/node/v8.h:26:0,
                 from /home/menachem/.node-gyp/8.2.1/include/node/v8-debug.h:8,
                 from ../src/debug.cc:1:
/home/menachem/.node-gyp/8.2.1/include/node/v8-debug.h:209:39: note: declared here
                 static Local<Context> GetDebugContext(Isolate* isolate));
                                       ^
/home/menachem/.node-gyp/8.2.1/include/node/v8config.h:329:3: note: in definition of macro ‘V8_DEPRECATED’
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
../src/debug.cc:66:54: error: no matching function for call to ‘v8::Debug::GetDebugContext()’
           debug_context = v8::Debug::GetDebugContext();
                                                      ^
In file included from /home/menachem/.node-gyp/8.2.1/include/node/v8.h:26:0,
                 from /home/menachem/.node-gyp/8.2.1/include/node/v8-debug.h:8,
                 from ../src/debug.cc:1:
/home/menachem/.node-gyp/8.2.1/include/node/v8-debug.h:209:39: note: candidate: static v8::Local<v8::Context> v8::Debug::GetDebugContext(v8::Isolate*)
                 static Local<Context> GetDebugContext(Isolate* isolate));
                                       ^
/home/menachem/.node-gyp/8.2.1/include/node/v8config.h:329:3: note: in definition of macro ‘V8_DEPRECATED’
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
/home/menachem/.node-gyp/8.2.1/include/node/v8-debug.h:209:39: note:   candidate expects 1 argument, 0 provided
                 static Local<Context> GetDebugContext(Isolate* isolate));
                                       ^
/home/menachem/.node-gyp/8.2.1/include/node/v8config.h:329:3: note: in definition of macro ‘V8_DEPRECATED’
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
debug.target.mk:98: recipe for target 'Release/obj.target/debug/src/debug.o' failed
make: *** [Release/obj.target/debug/src/debug.o] Error 1
make: Leaving directory '/home/menachem/code/labs/redux-reducer-v-000/node_modules/v8-debug/build'
gyp ERR! build error 
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack     at ChildProcess.onExit (/home/menachem/code/labs/redux-reducer-v-000/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:200:12)
gyp ERR! System Linux 4.10.0-28-generic
gyp ERR! command "/home/menachem/.nvm/versions/node/v8.2.1/bin/node" "/home/menachem/code/labs/redux-reducer-v-000/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "build" "--fallback-to-build" "--module=/home/menachem/code/labs/redux-reducer-v-000/node_modules/v8-debug/build/debug/v0.7.7/node-v57-linux-x64/debug.node" "--module_name=debug" "--module_path=/home/menachem/code/labs/redux-reducer-v-000/node_modules/v8-debug/build/debug/v0.7.7/node-v57-linux-x64"
gyp ERR! cwd /home/menachem/code/labs/redux-reducer-v-000/node_modules/v8-debug
gyp ERR! node -v v8.2.1
gyp ERR! node-gyp -v v3.6.2
gyp ERR! not ok 
node-pre-gyp ERR! build error 
node-pre-gyp ERR! stack Error: Failed to execute '/home/menachem/.nvm/versions/node/v8.2.1/bin/node /home/menachem/code/labs/redux-reducer-v-000/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js build --fallback-to-build --module=/home/menachem/code/labs/redux-reducer-v-000/node_modules/v8-debug/build/debug/v0.7.7/node-v57-linux-x64/debug.node --module_name=debug --module_path=/home/menachem/code/labs/redux-reducer-v-000/node_modules/v8-debug/build/debug/v0.7.7/node-v57-linux-x64' (1)
node-pre-gyp ERR! stack     at ChildProcess.<anonymous> (/home/menachem/code/labs/redux-reducer-v-000/node_modules/node-pre-gyp/lib/util/compile.js:83:29)
node-pre-gyp ERR! stack     at emitTwo (events.js:125:13)
node-pre-gyp ERR! stack     at ChildProcess.emit (events.js:213:7)
node-pre-gyp ERR! stack     at maybeClose (internal/child_process.js:921:16)
node-pre-gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:211:5)
node-pre-gyp ERR! System Linux 4.10.0-28-generic
node-pre-gyp ERR! command "/home/menachem/.nvm/versions/node/v8.2.1/bin/node" "/home/menachem/code/labs/redux-reducer-v-000/node_modules/.bin/node-pre-gyp" "install" "--fallback-to-build"
node-pre-gyp ERR! cwd /home/menachem/code/labs/redux-reducer-v-000/node_modules/v8-debug
node-pre-gyp ERR! node -v v8.2.1
node-pre-gyp ERR! node-pre-gyp -v v0.6.36
node-pre-gyp ERR! not ok 
Failed to execute '/home/menachem/.nvm/versions/node/v8.2.1/bin/node /home/menachem/code/labs/redux-reducer-v-000/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js build --fallback-to-build --module=/home/menachem/code/labs/redux-reducer-v-000/node_modules/v8-debug/build/debug/v0.7.7/node-v57-linux-x64/debug.node --module_name=debug --module_path=/home/menachem/code/labs/redux-reducer-v-000/node_modules/v8-debug/build/debug/v0.7.7/node-v57-linux-x64' (1)
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.1.2 (node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.1.2: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})

npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! v8-debug@0.7.7 install: `node-pre-gyp install --fallback-to-build`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the v8-debug@0.7.7 install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
@mhornbacher
Copy link
Author

Note that there are no issues on 8.1.4. Any Ideas on where to begin?

@addaleax
Copy link
Member

Reported at node-inspector/v8-debug#43 as well (please always cross-link issues if you’re opening multiple ones).

Note that there are no issues on 8.1.4.

That sounds odd; the Debug::Call method the code is trying to call has been removed when Node 7 came out.

Also, it looks like this has been fixed in recent versions of v8-debug.

@Fishrock123
Copy link
Contributor

Can you try clearing your global npm modules?

@mhornbacher
Copy link
Author

mhornbacher commented Jul 21, 2017

How do I do that? also for some reason npm install was not running the errors but it does fail in 8.1.4, and the latest version of v8-debug or 1.0.1

@mhornbacher mhornbacher reopened this Jul 21, 2017
@mscdex mscdex added the question Issues that look for answers. label Jul 21, 2017
@addaleax
Copy link
Member

@PCGeekBrain Looks like v8-debug is also using APIs that have gone away with Node 8 (namely, v8::Debug::GetMirror), even at its latest version.

That that API is going away is not under our direct control; it’s something that’s happening upstream in V8 and that we basically just have to accept as a breaking change that comes with Node 8. Also, the entirety of V8’s Debug API is being deprecated and will be removed in Node 9 or Node 10 (again, outside of our control), so it’s probably a good idea to move away from v8-debug in general.

I’m closing this as it’s not an issue with Node itself, just a breaking change that happened and that we can’t really revisit, sorry. Keep node-inspector/v8-debug#43 open and try to find a solution there on the module’s issue tracker, but right now v8-debug just isn’t working with Node 8.

@sparkleholic
Copy link

v8 commit log related to this issue

commit 8ae463d736c1a85d66babf2593fd4397162a80f0
Author: yangguo <yangguo@chromium.org>
Date:   Thu Feb 2 06:22:15 2017 -0800

    [debugger] remove mirror cache and v8::Debug::GetMirror.
    
    R=jgruber@chromium.org
    BUG=v8:5530

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
question Issues that look for answers.
Projects
None yet
Development

No branches or pull requests

5 participants