I'm trying to build level on node 12.1.0 and 12.2.0 on both ubuntu 18.04 and debian stretch. There are no prebuilt binaries so it tries to compile source and fails at multiple places due to
error: no matching function for call to <various>
Here's a log of the output (sorry if it's more than needed).
prebuild-install WARN install No prebuilt binaries found (target=12.2.0 runtime=node arch=x64 libc= platform=linux)
make: Entering directory '/root/appoptics-apm-node/node_modules/leveldown/build'
CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/db/builder.o
CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/db/db_impl.o
CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/db/db_iter.o
CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/db/filename.o
CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/db/dbformat.o
CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/db/log_reader.o
CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/db/log_writer.o
CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/db/memtable.o
CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/db/repair.o
CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/db/table_cache.o
CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/db/version_edit.o
CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/db/version_set.o
CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/db/write_batch.o
CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/helpers/memenv/memenv.o
CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/port/port_posix_sse.o
CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/table/block.o
CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/table/block_builder.o
CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/table/filter_block.o
CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/table/format.o
CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/table/iterator.o
CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/table/merger.o
CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/table/table.o
CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/table/table_builder.o
CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/table/two_level_iterator.o
CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/util/arena.o
CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/util/bloom.o
CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/util/cache.o
CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/util/coding.o
CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/util/comparator.o
CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/util/crc32c.o
CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/util/env.o
CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/util/filter_policy.o
CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/util/hash.o
CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/util/logging.o
CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/util/options.o
CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/util/status.o
CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/port/port_posix.o
CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/util/env_posix.o
AR(target) Release/obj.target/deps/leveldb/leveldb.a
COPY Release/leveldb.a
CXX(target) Release/obj.target/snappy/deps/snappy/snappy-1.1.4/snappy-sinksource.o
CXX(target) Release/obj.target/snappy/deps/snappy/snappy-1.1.4/snappy-stubs-internal.o
CXX(target) Release/obj.target/snappy/deps/snappy/snappy-1.1.4/snappy.o
AR(target) Release/obj.target/deps/snappy/snappy.a
COPY Release/snappy.a
CXX(target) Release/obj.target/leveldown/src/batch.o
In file included from ../node_modules/nan/nan_converters.h:67:0,
from ../node_modules/nan/nan.h:222,
from ../src/batch.cc:3:
../node_modules/nan/nan_converters_43_inl.h: In static member function 'static Nan::imp::ToFactoryBase::return_t Nan::imp::ToFactory::convert(v8::Local)':
../node_modules/nan/nan_converters_43_inl.h:18:51: warning: 'v8::MaybeLocal v8::Value::ToBoolean(v8::Local) const' is deprecated: ToBoolean can never throw. Use Local version. [-Wdeprecated-declarations]
val->To ## TYPE(isolate->GetCurrentContext()) \
^
../node_modules/nan/nan_converters_43_inl.h:22:1: note: in expansion of macro 'X'
X(Boolean)
^
In file included from /root/.node-gyp/12.2.0/include/node/v8-internal.h:14:0,
from /root/.node-gyp/12.2.0/include/node/v8.h:25,
from /root/.node-gyp/12.2.0/include/node/node.h:63,
from ../src/batch.cc:1:
/root/.node-gyp/12.2.0/include/node/v8.h:2524:63: note: declared here
V8_WARN_UNUSED_RESULT MaybeLocal ToBoolean(
^
/root/.node-gyp/12.2.0/include/node/v8config.h:322:3: note: in definition of macro 'V8_DEPRECATE_SOON'
declarator attribute((deprecated(message)))
^~~~~~
In file included from ../node_modules/nan/nan_converters.h:67:0,
from ../node_modules/nan/nan.h:222,
from ../src/batch.cc:3:
../node_modules/nan/nan_converters_43_inl.h: In static member function 'static Nan::imp::ValueFactoryBase::return_t Nan::imp::ToFactory::convert(v8::Local)':
../node_modules/nan/nan_converters_43_inl.h:37:57: warning: 'v8::Maybe v8::Value::BooleanValue(v8::Local) const' is deprecated: BooleanValue can never throw. Use Isolate version. [-Wdeprecated-declarations]
return val->NAME ## Value(isolate->GetCurrentContext()); \
^
../node_modules/nan/nan_converters_43_inl.h:40:1: note: in expansion of macro 'X'
X(bool, Boolean)
^
In file included from /root/.node-gyp/12.2.0/include/node/v8-internal.h:14:0,
from /root/.node-gyp/12.2.0/include/node/v8.h:25,
from /root/.node-gyp/12.2.0/include/node/node.h:63,
from ../src/batch.cc:1:
/root/.node-gyp/12.2.0/include/node/v8.h:2562:51: note: declared here
V8_WARN_UNUSED_RESULT Maybe BooleanValue(
^
/root/.node-gyp/12.2.0/include/node/v8config.h:307:3: note: in definition of macro 'V8_DEPRECATED'
declarator attribute((deprecated(message)))
^~~~~~
In file included from ../node_modules/nan/nan_new.h:189:0,
from ../node_modules/nan/nan.h:223,
from ../src/batch.cc:3:
../node_modules/nan/nan_implementation_12_inl.h: In static member function 'static Nan::imp::FactoryBase::return_t Nan::imp::Factory::New(v8::Local)':
../node_modules/nan/nan_implementation_12_inl.h:356:37: error: no matching function for call to 'v8::StringObject::New(v8::Local&)'
return v8::StringObject::New(value).As();
^
In file included from /root/.node-gyp/12.2.0/include/node/node.h:63:0,
from ../src/batch.cc:1:
/root/.node-gyp/12.2.0/include/node/v8.h:5380:23: note: candidate: static v8::Local v8::StringObject::New(v8::Isolate, v8::Local)
static Local New(Isolate isolate, Local value);
^~~
/root/.node-gyp/12.2.0/include/node/v8.h:5380:23: note: candidate expects 2 arguments, 1 provided
In file included from ../node_modules/nan/nan_new.h:189:0,
from ../node_modules/nan/nan.h:223,
from ../src/batch.cc:3:
../node_modules/nan/nan_implementation_12_inl.h:356:58: error: expected primary-expression before '>' token
return v8::StringObject::New(value).As();
^
../node_modules/nan/nan_implementation_12_inl.h:356:60: error: expected primary-expression before ')' token
return v8::StringObject::New(value).As();
^
In file included from /usr/include/c++/6/cassert:44:0,
from /root/.node-gyp/12.2.0/include/node/node_object_wrap.h:26,
from ../node_modules/nan/nan.h:55,
from ../src/batch.cc:3:
../node_modules/nan/nan_object_wrap.h: In destructor 'virtual Nan::ObjectWrap::~ObjectWrap()':
../node_modules/nan/nan_object_wrap.h:24:25: error: 'class Nan::Persistent' has no member named 'IsNearDeath'
assert(persistent().IsNearDeath());
^
../node_modules/nan/nan_object_wrap.h: In static member function 'static void Nan::ObjectWrap::WeakCallback(const v8::WeakCallbackInfo&)':
../node_modules/nan/nan_objectwrap.h:127:26: error: 'class Nan::Persistent' has no member named 'IsNearDeath'
assert(wrap->handle.IsNearDeath());
^
In file included from ../src/database.h:18:0,
from ../src/batch.cc:5:
../src/leveldown.h: In function 'size_t StringOrBufferLength(v8::Local)':
../src/leveldown.h:16:26: error: no matching function for call to 'v8::Value::ToObject()'
return (!obj->ToObject().IsEmpty()
^
In file included from /root/.node-gyp/12.2.0/include/node/node.h:63:0,
from ../src/batch.cc:1:
/root/.node-gyp/12.2.0/include/node/v8.h:2532:44: note: candidate: v8::MaybeLocal v8::Value::ToObject(v8::Local) const
V8_WARN_UNUSED_RESULT MaybeLocal
I'm trying to build level on node 12.1.0 and 12.2.0 on both ubuntu 18.04 and debian stretch. There are no prebuilt binaries so it tries to compile source and fails at multiple places due to
error: no matching function for call to <various>
Here's a log of the output (sorry if it's more than needed).
root@471002a74cee:~/user npm install level
prebuild-install WARN install No prebuilt binaries found (target=12.2.0 runtime=node arch=x64 libc= platform=linux) make: Entering directory '/root/appoptics-apm-node/node_modules/leveldown/build' CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/db/builder.o CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/db/db_impl.o CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/db/db_iter.o CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/db/filename.o CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/db/dbformat.o CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/db/log_reader.o CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/db/log_writer.o CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/db/memtable.o CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/db/repair.o CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/db/table_cache.o CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/db/version_edit.o CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/db/version_set.o CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/db/write_batch.o CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/helpers/memenv/memenv.o CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/port/port_posix_sse.o CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/table/block.o CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/table/block_builder.o CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/table/filter_block.o CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/table/format.o CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/table/iterator.o CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/table/merger.o CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/table/table.o CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/table/table_builder.o CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/table/two_level_iterator.o CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/util/arena.o CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/util/bloom.o CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/util/cache.o CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/util/coding.o CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/util/comparator.o CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/util/crc32c.o CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/util/env.o CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/util/filter_policy.o CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/util/hash.o CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/util/logging.o CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/util/options.o CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/util/status.o CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/port/port_posix.o CXX(target) Release/obj.target/leveldb/deps/leveldb/leveldb-1.20/util/env_posix.o AR(target) Release/obj.target/deps/leveldb/leveldb.a COPY Release/leveldb.a CXX(target) Release/obj.target/snappy/deps/snappy/snappy-1.1.4/snappy-sinksource.o CXX(target) Release/obj.target/snappy/deps/snappy/snappy-1.1.4/snappy-stubs-internal.o CXX(target) Release/obj.target/snappy/deps/snappy/snappy-1.1.4/snappy.o AR(target) Release/obj.target/deps/snappy/snappy.a COPY Release/snappy.a CXX(target) Release/obj.target/leveldown/src/batch.o In file included from ../node_modules/nan/nan_converters.h:67:0, from ../node_modules/nan/nan.h:222, from ../src/batch.cc:3: ../node_modules/nan/nan_converters_43_inl.h: In static member function 'static Nan::imp::ToFactoryBase::return_t Nan::imp::ToFactory::convert(v8::Local)':
../node_modules/nan/nan_converters_43_inl.h:18:51: warning: 'v8::MaybeLocal v8::Value::ToBoolean(v8::Local) const' is deprecated: ToBoolean can never throw. Use Local version. [-Wdeprecated-declarations]
val->To ## TYPE(isolate->GetCurrentContext()) \
^
../node_modules/nan/nan_converters_43_inl.h:22:1: note: in expansion of macro 'X'
X(Boolean)
^
In file included from /root/.node-gyp/12.2.0/include/node/v8-internal.h:14:0,
from /root/.node-gyp/12.2.0/include/node/v8.h:25,
from /root/.node-gyp/12.2.0/include/node/node.h:63,
from ../src/batch.cc:1:
/root/.node-gyp/12.2.0/include/node/v8.h:2524:63: note: declared here
V8_WARN_UNUSED_RESULT MaybeLocal ToBoolean(
^
/root/.node-gyp/12.2.0/include/node/v8config.h:322:3: note: in definition of macro 'V8_DEPRECATE_SOON'
declarator attribute((deprecated(message)))
^::return_t Nan::imp::ToFactory::convert(v8::Local)':
../node_modules/nan/nan_converters_43_inl.h:37:57: warning: 'v8::Maybe v8::Value::BooleanValue(v8::Local) const' is deprecated: BooleanValue can never throw. Use Isolate version. [-Wdeprecated-declarations]
return val->NAME ## Value(isolate->GetCurrentContext()); \
^
../node_modules/nan/nan_converters_43_inl.h:40:1: note: in expansion of macro 'X'
X(bool, Boolean)
^
In file included from /root/.node-gyp/12.2.0/include/node/v8-internal.h:14:0,
from /root/.node-gyp/12.2.0/include/node/v8.h:25,
from /root/.node-gyp/12.2.0/include/node/node.h:63,
from ../src/batch.cc:1:
/root/.node-gyp/12.2.0/include/node/v8.h:2562:51: note: declared here
V8_WARN_UNUSED_RESULT Maybe BooleanValue(
^
/root/.node-gyp/12.2.0/include/node/v8config.h:307:3: note: in definition of macro 'V8_DEPRECATED'
declarator attribute((deprecated(message)))
^::return_t Nan::imp::Factory::New(v8::Local)':
../node_modules/nan/nan_implementation_12_inl.h:356:37: error: no matching function for call to 'v8::StringObject::New(v8::Local&)'
return v8::StringObject::New(value).As();
^
In file included from /root/.node-gyp/12.2.0/include/node/node.h:63:0,
from ../src/batch.cc:1:
/root/.node-gyp/12.2.0/include/node/v8.h:5380:23: note: candidate: static v8::Local v8::StringObject::New(v8::Isolate, v8::Local)
static Local New(Isolate isolate, Local value);
^~~
/root/.node-gyp/12.2.0/include/node/v8.h:5380:23: note: candidate expects 2 arguments, 1 provided
In file included from ../node_modules/nan/nan_new.h:189:0,
from ../node_modules/nan/nan.h:223,
from ../src/batch.cc:3:
../node_modules/nan/nan_implementation_12_inl.h:356:58: error: expected primary-expression before '>' token
return v8::StringObject::New(value).As();
^
../node_modules/nan/nan_implementation_12_inl.h:356:60: error: expected primary-expression before ')' token
return v8::StringObject::New(value).As();
^
In file included from /usr/include/c++/6/cassert:44:0,
from /root/.node-gyp/12.2.0/include/node/node_object_wrap.h:26,
from ../node_modules/nan/nan.h:55,
from ../src/batch.cc:3:
../node_modules/nan/nan_object_wrap.h: In destructor 'virtual Nan::ObjectWrap::~ObjectWrap()':
../node_modules/nan/nan_object_wrap.h:24:25: error: 'class Nan::Persistent' has no member named 'IsNearDeath'
assert(persistent().IsNearDeath());
^
../node_modules/nan/nan_object_wrap.h: In static member function 'static void Nan::ObjectWrap::WeakCallback(const v8::WeakCallbackInfo&)':
../node_modules/nan/nan_objectwrap.h:127:26: error: 'class Nan::Persistent' has no member named 'IsNearDeath'
assert(wrap->handle .IsNearDeath());
^
In file included from ../src/database.h:18:0,
from ../src/batch.cc:5:
../src/leveldown.h: In function 'size_t StringOrBufferLength(v8::Local)':
../src/leveldown.h:16:26: error: no matching function for call to 'v8::Value::ToObject()'
return (!obj->ToObject().IsEmpty()
^
In file included from /root/.node-gyp/12.2.0/include/node/node.h:63:0,
from ../src/batch.cc:1:
/root/.node-gyp/12.2.0/include/node/v8.h:2532:44: note: candidate: v8::MaybeLocal v8::Value::ToObject(v8::Local) const
V8_WARN_UNUSED_RESULT MaybeLocal
~~~~~ In file included from ../node_modules/nan/nan_converters.h:67:0, from ../node_modules/nan/nan.h:222, from ../src/batch.cc:3: ../node_modules/nan/nan_converters_43_inl.h: In static member function 'static Nan::imp::ValueFactoryBase~~~~~ In file included from ../node_modules/nan/nan_new.h:189:0, from ../node_modules/nan/nan.h:223, from ../src/batch.cc:3: ../node_modules/nan/nan_implementation_12_inl.h: In static member function 'static Nan::imp::FactoryBase