Node-gyp: Apple LLVM 8.1 breaks node-gyp?

Created on 29 Mar 2017  路  7Comments  路  Source: nodejs/node-gyp

Today's apple update for LLVM 8.1 seems to break node-gyp.

/Users/kessilerrodrigues/.node-gyp/0.12.18/include/node/v8.h:5800:54: error: 'CreateHandle' is a protected member of 'v8::HandleScope'
  return Handle<T>(reinterpret_cast<T*>(HandleScope::CreateHandle(
                                        ~~~~~~~~~~~~~^~~~~~~~~~~~
/Users/kessilerrodrigues/.node-gyp/0.12.18/include/node/v8.h:820:29: note: declared protected here
  static internal::Object** CreateHandle(internal::Isolate* isolate,

Apple LLVM version 8.1.0 (clang-802.0.38)

Most helpful comment

@kessiler Just move the definition of CreateHandle in the .h file from the protected to the public definition - that should fix the build error!

All 7 comments

You're probably out of luck. v0.12.18 is out of support, nothing can be done about that. Try upgrading to node.js v4.x or newer.

:(

@kessiler Just move the definition of CreateHandle in the .h file from the protected to the public definition - that should fix the build error!

@Thoro that worked, thanks!

@Thoro Thanks for the tip, this really worked

@kessiler also struggling with this very issue, trying to install livedb/hiredis on 0.12. 馃槙 I think it will just speed up the planned upgrade maintenance for this.

For those who are not familiar with .h files, you need to move:

static internal::Object** CreateHandle(internal::Isolate* isolate, internal::Object* value);

from under

protected:

to under

public:

Around line 820 in

v8/include/v8.h

Was this page helpful?
0 / 5 - 0 ratings

Related issues

Sentero-esp12 picture Sentero-esp12  路  3Comments

Flimm picture Flimm  路  3Comments

j4y picture j4y  路  4Comments

jhermsmeier picture jhermsmeier  路  3Comments

meldsza picture meldsza  路  3Comments