mapbox-gl-native icon indicating copy to clipboard operation
mapbox-gl-native copied to clipboard

Compilation from sources fails

Open tonnyavery opened this issue 4 years ago • 1 comments

Compilation fails with an error at 99%.

Here is a Dockerfile to reproduce:

FROM debian:latest

RUN apt-get update \
    && apt-get dist-upgrade -y \
    && apt-get autoremove --purge -y && apt-get clean

RUN apt-get install -y \
      build-essential \
      libcurl4-openssl-dev \
      libgl1-mesa-dev \
      libgles2-mesa-dev \
      libglfw3-dev \
      libicu-dev \
      libjpeg62-turbo-dev \
      libpng-dev \
      libuv1-dev \
      zlib1g-dev \
      pkg-config \
    && apt-get autoremove --purge -y && apt-get clean

RUN apt-get -y install cmake
RUN apt-get -y install git npm curl
RUN npm install -g n
RUN n 12
RUN node -v

RUN git clone https://github.com/mapbox/mapbox-gl-native 
WORKDIR /mapbox-gl-native 
RUN git submodule update --init --recursive
RUN npm update
RUN cmake . -B build
RUN cmake --build build
Error log
In file included from /mapbox-gl-native/build/headers/nan/2.10.0/nan_converters.h:67,
                 from /mapbox-gl-native/build/headers/nan/2.10.0/nan.h:202,
                 from /mapbox-gl-native/platform/node/src/node_conversion.hpp:6,
                 from /mapbox-gl-native/platform/node/src/node_expression.cpp:1:
/mapbox-gl-native/build/headers/nan/2.10.0/nan_converters_43_inl.h: In static member function 'static Nan::imp::ToFactoryBase<v8::Boolean>::return_t Nan::imp::ToFactory<v8::Boolean>::convert(v8::Local<v8::Value>)':
/mapbox-gl-native/build/headers/nan/2.10.0/nan_converters_43_inl.h:22:1: error: no matching function for call to 'v8::Value::ToBoolean(v8::Local<v8::Context>)'
 X(Boolean)
 ^
In file included from /mapbox-gl-native/build/headers/node/v15.8.0/node.h:63,
                 from /mapbox-gl-native/build/headers/nan/2.10.0/nan.h:51,
                 from /mapbox-gl-native/platform/node/src/node_conversion.hpp:6,
                 from /mapbox-gl-native/platform/node/src/node_expression.cpp:1:
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:2894:18: note: candidate: 'v8::Local<v8::Boolean> v8::Value::ToBoolean(v8::Isolate*) const'
   Local<Boolean> ToBoolean(Isolate* isolate) const;
                  ^~~~~~~~~
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:2894:18: note:   no known conversion for argument 1 from 'v8::Local<v8::Context>' to 'v8::Isolate*'
In file included from /mapbox-gl-native/build/headers/nan/2.10.0/nan_converters.h:67,
                 from /mapbox-gl-native/build/headers/nan/2.10.0/nan.h:202,
                 from /mapbox-gl-native/platform/node/src/node_conversion.hpp:6,
                 from /mapbox-gl-native/platform/node/src/node_expression.cpp:1:
/mapbox-gl-native/build/headers/nan/2.10.0/nan_converters_43_inl.h: In static member function 'static Nan::imp::ValueFactoryBase<bool>::return_t Nan::imp::ToFactory<bool>::convert(v8::Local<v8::Value>)':
/mapbox-gl-native/build/headers/nan/2.10.0/nan_converters_43_inl.h:40:1: error: no matching function for call to 'v8::Value::BooleanValue(v8::Local<v8::Context>)'
 X(bool, Boolean)
 ^
In file included from /mapbox-gl-native/build/headers/node/v15.8.0/node.h:63,
                 from /mapbox-gl-native/build/headers/nan/2.10.0/nan.h:51,
                 from /mapbox-gl-native/platform/node/src/node_conversion.hpp:6,
                 from /mapbox-gl-native/platform/node/src/node_expression.cpp:1:
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:2904:8: note: candidate: 'bool v8::Value::BooleanValue(v8::Isolate*) const'
   bool BooleanValue(Isolate* isolate) const;
        ^~~~~~~~~~~~
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:2904:8: note:   no known conversion for argument 1 from 'v8::Local<v8::Context>' to 'v8::Isolate*'
In file included from /mapbox-gl-native/build/headers/nan/2.10.0/nan_new.h:189,
                 from /mapbox-gl-native/build/headers/nan/2.10.0/nan.h:203,
                 from /mapbox-gl-native/platform/node/src/node_conversion.hpp:6,
                 from /mapbox-gl-native/platform/node/src/node_expression.cpp:1:
/mapbox-gl-native/build/headers/nan/2.10.0/nan_implementation_12_inl.h: In static member function 'static Nan::imp::FactoryBase<v8::Function>::return_t Nan::imp::Factory<v8::Function>::New(Nan::FunctionCallback, v8::Local<v8::Value>)':
/mapbox-gl-native/build/headers/nan/2.10.0/nan_implementation_12_inl.h:105:32: error: no matching function for call to 'v8::Function::New(v8::Isolate*&, void (&)(const v8::FunctionCallbackInfo<v8::Value>&), v8::Local<v8::Object>&)'
                           , obj));
                                ^
In file included from /mapbox-gl-native/build/headers/node/v15.8.0/node.h:63,
                 from /mapbox-gl-native/build/headers/nan/2.10.0/nan.h:51,
                 from /mapbox-gl-native/platform/node/src/node_conversion.hpp:6,
                 from /mapbox-gl-native/platform/node/src/node_expression.cpp:1:
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:4491:31: note: candidate: 'static v8::MaybeLocal<v8::Function> v8::Function::New(v8::Local<v8::Context>, v8::FunctionCallback, v8::Local<v8::Value>, int, v8::ConstructorBehavior, v8::SideEffectType)'
   static MaybeLocal<Function> New(
                               ^~~
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:4491:31: note:   no known conversion for argument 1 from 'v8::Isolate*' to 'v8::Local<v8::Context>'
In file included from /mapbox-gl-native/build/headers/nan/2.10.0/nan_new.h:189,
                 from /mapbox-gl-native/build/headers/nan/2.10.0/nan.h:203,
                 from /mapbox-gl-native/platform/node/src/node_conversion.hpp:6,
                 from /mapbox-gl-native/platform/node/src/node_expression.cpp:1:
/mapbox-gl-native/build/headers/nan/2.10.0/nan_implementation_12_inl.h: In static member function 'static Nan::imp::FactoryBase<v8::StringObject>::return_t Nan::imp::Factory<v8::StringObject>::New(v8::Local<v8::String>)':
/mapbox-gl-native/build/headers/nan/2.10.0/nan_implementation_12_inl.h:337:37: error: no matching function for call to 'v8::StringObject::New(v8::Local<v8::String>&)'
   return v8::StringObject::New(value).As<v8::StringObject>();
                                     ^
In file included from /mapbox-gl-native/build/headers/node/v15.8.0/node.h:63,
                 from /mapbox-gl-native/build/headers/nan/2.10.0/nan.h:51,
                 from /mapbox-gl-native/platform/node/src/node_conversion.hpp:6,
                 from /mapbox-gl-native/platform/node/src/node_expression.cpp:1:
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:5900:23: note: candidate: 'static v8::Local<v8::Value> v8::StringObject::New(v8::Isolate*, v8::Local<v8::String>)'
   static Local<Value> New(Isolate* isolate, Local<String> value);
                       ^~~
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:5900:23: note:   candidate expects 2 arguments, 1 provided
In file included from /mapbox-gl-native/build/headers/nan/2.10.0/nan_new.h:189,
                 from /mapbox-gl-native/build/headers/nan/2.10.0/nan.h:203,
                 from /mapbox-gl-native/platform/node/src/node_conversion.hpp:6,
                 from /mapbox-gl-native/platform/node/src/node_expression.cpp:1:
/mapbox-gl-native/build/headers/nan/2.10.0/nan_implementation_12_inl.h:337:58: error: expected primary-expression before '>' token
   return v8::StringObject::New(value).As<v8::StringObject>();
                                                          ^
/mapbox-gl-native/build/headers/nan/2.10.0/nan_implementation_12_inl.h:337:60: error: expected primary-expression before ')' token
   return v8::StringObject::New(value).As<v8::StringObject>();
                                                            ^
In file included from /mapbox-gl-native/platform/node/src/node_conversion.hpp:6,
                 from /mapbox-gl-native/platform/node/src/node_expression.cpp:1:
/mapbox-gl-native/build/headers/nan/2.10.0/nan.h: In constructor 'Nan::Utf8String::Utf8String(v8::Local<v8::Value>)':
/mapbox-gl-native/build/headers/nan/2.10.0/nan.h:1034:53: error: no matching function for call to 'v8::Value::ToString()'
       v8::Local<v8::String> string = from->ToString();
                                                     ^
In file included from /mapbox-gl-native/build/headers/node/v15.8.0/node.h:63,
                 from /mapbox-gl-native/build/headers/nan/2.10.0/nan.h:51,
                 from /mapbox-gl-native/platform/node/src/node_conversion.hpp:6,
                 from /mapbox-gl-native/platform/node/src/node_expression.cpp:1:
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:2856:44: note: candidate: 'v8::MaybeLocal<v8::String> v8::Value::ToString(v8::Local<v8::Context>) const'
   V8_WARN_UNUSED_RESULT MaybeLocal<String> ToString(
                                            ^~~~~~~~
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:2856:44: note:   candidate expects 1 argument, 0 provided
In file included from /mapbox-gl-native/platform/node/src/node_conversion.hpp:6,
                 from /mapbox-gl-native/platform/node/src/node_expression.cpp:1:
/mapbox-gl-native/build/headers/nan/2.10.0/nan.h:1044:74: error: no matching function for call to 'v8::String::WriteUtf8(char*&, int, int, const int&)'
         length_ = string->WriteUtf8(str_, static_cast<int>(len), 0, flags);
                                                                          ^
In file included from /mapbox-gl-native/build/headers/node/v15.8.0/node.h:63,
                 from /mapbox-gl-native/build/headers/nan/2.10.0/nan.h:51,
                 from /mapbox-gl-native/platform/node/src/node_conversion.hpp:6,
                 from /mapbox-gl-native/platform/node/src/node_expression.cpp:1:
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:3083:7: note: candidate: 'int v8::String::WriteUtf8(v8::Isolate*, char*, int, int*, int) const'
   int WriteUtf8(Isolate* isolate, char* buffer, int length = -1,
       ^~~~~~~~~
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:3083:7: note:   no known conversion for argument 1 from 'char*' to 'v8::Isolate*'
In file included from /mapbox-gl-native/platform/node/src/node_conversion.hpp:6,
                 from /mapbox-gl-native/platform/node/src/node_expression.cpp:1:
/mapbox-gl-native/build/headers/nan/2.10.0/nan.h: In member function 'void Nan::AsyncWorker::SaveToPersistent(const char*, const v8::Local<v8::Value>&)':
/mapbox-gl-native/build/headers/nan/2.10.0/nan.h:1818:64: error: no matching function for call to 'v8::Object::Set(v8::Local<v8::String>, const v8::Local<v8::Value>&)'
     New(persistentHandle)->Set(New(key).ToLocalChecked(), value);
                                                                ^
In file included from /mapbox-gl-native/build/headers/node/v15.8.0/node.h:63,
                 from /mapbox-gl-native/build/headers/nan/2.10.0/nan.h:51,
                 from /mapbox-gl-native/platform/node/src/node_conversion.hpp:6,
                 from /mapbox-gl-native/platform/node/src/node_expression.cpp:1:
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:3716:37: note: candidate: 'v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, v8::Local<v8::Value>, v8::Local<v8::Value>)'
   V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context,
                                     ^~~
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:3716:37: note:   candidate expects 3 arguments, 2 provided
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:3719:37: note: candidate: 'v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, uint32_t, v8::Local<v8::Value>)'
   V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context, uint32_t index,
                                     ^~~
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:3719:37: note:   candidate expects 3 arguments, 2 provided
In file included from /mapbox-gl-native/platform/node/src/node_conversion.hpp:6,
                 from /mapbox-gl-native/platform/node/src/node_expression.cpp:1:
/mapbox-gl-native/build/headers/nan/2.10.0/nan.h: In member function 'void Nan::AsyncWorker::SaveToPersistent(const v8::Local<v8::String>&, const v8::Local<v8::Value>&)':
/mapbox-gl-native/build/headers/nan/2.10.0/nan.h:1824:42: error: no matching function for call to 'v8::Object::Set(const v8::Local<v8::String>&, const v8::Local<v8::Value>&)'
     New(persistentHandle)->Set(key, value);
                                          ^
In file included from /mapbox-gl-native/build/headers/node/v15.8.0/node.h:63,
                 from /mapbox-gl-native/build/headers/nan/2.10.0/nan.h:51,
                 from /mapbox-gl-native/platform/node/src/node_conversion.hpp:6,
                 from /mapbox-gl-native/platform/node/src/node_expression.cpp:1:
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:3716:37: note: candidate: 'v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, v8::Local<v8::Value>, v8::Local<v8::Value>)'
   V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context,
                                     ^~~
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:3716:37: note:   candidate expects 3 arguments, 2 provided
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:3719:37: note: candidate: 'v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, uint32_t, v8::Local<v8::Value>)'
   V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context, uint32_t index,
                                     ^~~
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:3719:37: note:   candidate expects 3 arguments, 2 provided
In file included from /mapbox-gl-native/platform/node/src/node_conversion.hpp:6,
                 from /mapbox-gl-native/platform/node/src/node_expression.cpp:1:
/mapbox-gl-native/build/headers/nan/2.10.0/nan.h: In member function 'void Nan::AsyncWorker::SaveToPersistent(uint32_t, const v8::Local<v8::Value>&)':
/mapbox-gl-native/build/headers/nan/2.10.0/nan.h:1830:44: error: no matching function for call to 'v8::Object::Set(uint32_t&, const v8::Local<v8::Value>&)'
     New(persistentHandle)->Set(index, value);
                                            ^
In file included from /mapbox-gl-native/build/headers/node/v15.8.0/node.h:63,
                 from /mapbox-gl-native/build/headers/nan/2.10.0/nan.h:51,
                 from /mapbox-gl-native/platform/node/src/node_conversion.hpp:6,
                 from /mapbox-gl-native/platform/node/src/node_expression.cpp:1:
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:3716:37: note: candidate: 'v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, v8::Local<v8::Value>, v8::Local<v8::Value>)'
   V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context,
                                     ^~~
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:3716:37: note:   candidate expects 3 arguments, 2 provided
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:3719:37: note: candidate: 'v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, uint32_t, v8::Local<v8::Value>)'
   V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context, uint32_t index,
                                     ^~~
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:3719:37: note:   candidate expects 3 arguments, 2 provided
In file included from /mapbox-gl-native/platform/node/src/node_conversion.hpp:6,
                 from /mapbox-gl-native/platform/node/src/node_expression.cpp:1:
/mapbox-gl-native/build/headers/nan/2.10.0/nan.h: In member function 'v8::Local<v8::Value> Nan::AsyncWorker::GetFromPersistent(const char*) const':
/mapbox-gl-native/build/headers/nan/2.10.0/nan.h:1836:61: error: no matching function for call to 'v8::Object::Get(v8::Local<v8::String>)'
         New(persistentHandle)->Get(New(key).ToLocalChecked()));
                                                             ^
In file included from /mapbox-gl-native/build/headers/node/v15.8.0/node.h:63,
                 from /mapbox-gl-native/build/headers/nan/2.10.0/nan.h:51,
                 from /mapbox-gl-native/platform/node/src/node_conversion.hpp:6,
                 from /mapbox-gl-native/platform/node/src/node_expression.cpp:1:
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:3763:43: note: candidate: 'v8::MaybeLocal<v8::Value> v8::Object::Get(v8::Local<v8::Context>, v8::Local<v8::Value>)'
   V8_WARN_UNUSED_RESULT MaybeLocal<Value> Get(Local<Context> context,
                                           ^~~
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:3763:43: note:   candidate expects 2 arguments, 1 provided
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:3766:43: note: candidate: 'v8::MaybeLocal<v8::Value> v8::Object::Get(v8::Local<v8::Context>, uint32_t)'
   V8_WARN_UNUSED_RESULT MaybeLocal<Value> Get(Local<Context> context,
                                           ^~~
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:3766:43: note:   candidate expects 2 arguments, 1 provided
In file included from /mapbox-gl-native/platform/node/src/node_conversion.hpp:6,
                 from /mapbox-gl-native/platform/node/src/node_expression.cpp:1:
/mapbox-gl-native/build/headers/nan/2.10.0/nan.h: In member function 'v8::Local<v8::Value> Nan::AsyncWorker::GetFromPersistent(const v8::Local<v8::String>&) const':
/mapbox-gl-native/build/headers/nan/2.10.0/nan.h:1842:55: error: no matching function for call to 'v8::Object::Get(const v8::Local<v8::String>&)'
     return scope.Escape(New(persistentHandle)->Get(key));
                                                       ^
In file included from /mapbox-gl-native/build/headers/node/v15.8.0/node.h:63,
                 from /mapbox-gl-native/build/headers/nan/2.10.0/nan.h:51,
                 from /mapbox-gl-native/platform/node/src/node_conversion.hpp:6,
                 from /mapbox-gl-native/platform/node/src/node_expression.cpp:1:
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:3763:43: note: candidate: 'v8::MaybeLocal<v8::Value> v8::Object::Get(v8::Local<v8::Context>, v8::Local<v8::Value>)'
   V8_WARN_UNUSED_RESULT MaybeLocal<Value> Get(Local<Context> context,
                                           ^~~
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:3763:43: note:   candidate expects 2 arguments, 1 provided
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:3766:43: note: candidate: 'v8::MaybeLocal<v8::Value> v8::Object::Get(v8::Local<v8::Context>, uint32_t)'
   V8_WARN_UNUSED_RESULT MaybeLocal<Value> Get(Local<Context> context,
                                           ^~~
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:3766:43: note:   candidate expects 2 arguments, 1 provided
In file included from /mapbox-gl-native/platform/node/src/node_conversion.hpp:6,
                 from /mapbox-gl-native/platform/node/src/node_expression.cpp:1:
/mapbox-gl-native/build/headers/nan/2.10.0/nan.h: In member function 'v8::Local<v8::Value> Nan::AsyncWorker::GetFromPersistent(uint32_t) const':
/mapbox-gl-native/build/headers/nan/2.10.0/nan.h:1847:57: error: no matching function for call to 'v8::Object::Get(uint32_t&)'
     return scope.Escape(New(persistentHandle)->Get(index));
                                                         ^
In file included from /mapbox-gl-native/build/headers/node/v15.8.0/node.h:63,
                 from /mapbox-gl-native/build/headers/nan/2.10.0/nan.h:51,
                 from /mapbox-gl-native/platform/node/src/node_conversion.hpp:6,
                 from /mapbox-gl-native/platform/node/src/node_expression.cpp:1:
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:3763:43: note: candidate: 'v8::MaybeLocal<v8::Value> v8::Object::Get(v8::Local<v8::Context>, v8::Local<v8::Value>)'
   V8_WARN_UNUSED_RESULT MaybeLocal<Value> Get(Local<Context> context,
                                           ^~~
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:3763:43: note:   candidate expects 2 arguments, 1 provided
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:3766:43: note: candidate: 'v8::MaybeLocal<v8::Value> v8::Object::Get(v8::Local<v8::Context>, uint32_t)'
   V8_WARN_UNUSED_RESULT MaybeLocal<Value> Get(Local<Context> context,
                                           ^~~
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:3766:43: note:   candidate expects 2 arguments, 1 provided
In file included from /mapbox-gl-native/build/headers/nan/2.10.0/nan.h:2657,
                 from /mapbox-gl-native/platform/node/src/node_conversion.hpp:6,
                 from /mapbox-gl-native/platform/node/src/node_expression.cpp:1:
/mapbox-gl-native/build/headers/nan/2.10.0/nan_object_wrap.h: In member function 'void Nan::ObjectWrap::MakeWeak()':
/mapbox-gl-native/build/headers/nan/2.10.0/nan_object_wrap.h:67:18: error: 'class Nan::Persistent<v8::Object>' has no member named 'MarkIndependent'
     persistent().MarkIndependent();
                  ^~~~~~~~~~~~~~~
In file included from /mapbox-gl-native/platform/node/src/node_expression.cpp:1:
/mapbox-gl-native/platform/node/src/node_conversion.hpp: In static member function 'static mbgl::optional<bool> mbgl::style::conversion::ConversionTraits<v8::Local<v8::Value> >::toBool(const v8::Local<v8::Value>&)':
/mapbox-gl-native/platform/node/src/node_conversion.hpp:82:36: error: no matching function for call to 'v8::Value::BooleanValue()'
         return value->BooleanValue();
                                    ^
In file included from /mapbox-gl-native/build/headers/node/v15.8.0/node.h:63,
                 from /mapbox-gl-native/build/headers/nan/2.10.0/nan.h:51,
                 from /mapbox-gl-native/platform/node/src/node_conversion.hpp:6,
                 from /mapbox-gl-native/platform/node/src/node_expression.cpp:1:
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:2904:8: note: candidate: 'bool v8::Value::BooleanValue(v8::Isolate*) const'
   bool BooleanValue(Isolate* isolate) const;
        ^~~~~~~~~~~~
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:2904:8: note:   candidate expects 1 argument, 0 provided
In file included from /mapbox-gl-native/platform/node/src/node_expression.cpp:1:
/mapbox-gl-native/platform/node/src/node_conversion.hpp: In static member function 'static mbgl::optional<float> mbgl::style::conversion::ConversionTraits<v8::Local<v8::Value> >::toNumber(const v8::Local<v8::Value>&)':
/mapbox-gl-native/platform/node/src/node_conversion.hpp:90:35: error: no matching function for call to 'v8::Value::NumberValue()'
         return value->NumberValue();
                                   ^
In file included from /mapbox-gl-native/build/headers/node/v15.8.0/node.h:63,
                 from /mapbox-gl-native/build/headers/nan/2.10.0/nan.h:51,
                 from /mapbox-gl-native/platform/node/src/node_conversion.hpp:6,
                 from /mapbox-gl-native/platform/node/src/node_expression.cpp:1:
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:2907:39: note: candidate: 'v8::Maybe<double> v8::Value::NumberValue(v8::Local<v8::Context>) const'
   V8_WARN_UNUSED_RESULT Maybe<double> NumberValue(Local<Context> context) const;
                                       ^~~~~~~~~~~
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:2907:39: note:   candidate expects 1 argument, 0 provided
In file included from /mapbox-gl-native/platform/node/src/node_expression.cpp:1:
/mapbox-gl-native/platform/node/src/node_conversion.hpp: In static member function 'static mbgl::optional<double> mbgl::style::conversion::ConversionTraits<v8::Local<v8::Value> >::toDouble(const v8::Local<v8::Value>&)':
/mapbox-gl-native/platform/node/src/node_conversion.hpp:98:35: error: no matching function for call to 'v8::Value::NumberValue()'
         return value->NumberValue();
                                   ^
In file included from /mapbox-gl-native/build/headers/node/v15.8.0/node.h:63,
                 from /mapbox-gl-native/build/headers/nan/2.10.0/nan.h:51,
                 from /mapbox-gl-native/platform/node/src/node_conversion.hpp:6,
                 from /mapbox-gl-native/platform/node/src/node_expression.cpp:1:
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:2907:39: note: candidate: 'v8::Maybe<double> v8::Value::NumberValue(v8::Local<v8::Context>) const'
   V8_WARN_UNUSED_RESULT Maybe<double> NumberValue(Local<Context> context) const;
                                       ^~~~~~~~~~~
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:2907:39: note:   candidate expects 1 argument, 0 provided
In file included from /mapbox-gl-native/platform/node/src/node_expression.cpp:1:
/mapbox-gl-native/platform/node/src/node_conversion.hpp: In static member function 'static mbgl::optional<mapbox::feature::value> mbgl::style::conversion::ConversionTraits<v8::Local<v8::Value> >::toValue(const v8::Local<v8::Value>&)':
/mapbox-gl-native/platform/node/src/node_conversion.hpp:117:55: error: no matching function for call to 'v8::Value::Uint32Value()'
             return { std::uint64_t(value->Uint32Value()) };
                                                       ^
In file included from /mapbox-gl-native/build/headers/node/v15.8.0/node.h:63,
                 from /mapbox-gl-native/build/headers/nan/2.10.0/nan.h:51,
                 from /mapbox-gl-native/platform/node/src/node_conversion.hpp:6,
                 from /mapbox-gl-native/platform/node/src/node_expression.cpp:1:
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:2912:41: note: candidate: 'v8::Maybe<unsigned int> v8::Value::Uint32Value(v8::Local<v8::Context>) const'
   V8_WARN_UNUSED_RESULT Maybe<uint32_t> Uint32Value(
                                         ^~~~~~~~~~~
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:2912:41: note:   candidate expects 1 argument, 0 provided
In file included from /mapbox-gl-native/platform/node/src/node_expression.cpp:1:
/mapbox-gl-native/platform/node/src/node_conversion.hpp:117:58: error: could not convert '{<expression error>}' from '<brace-enclosed initializer list>' to 'mbgl::optional<mapbox::feature::value>' {aka 'std::experimental::optional<mapbox::feature::value>'}
             return { std::uint64_t(value->Uint32Value()) };
                                                          ^
/mapbox-gl-native/platform/node/src/node_conversion.hpp:119:53: error: no matching function for call to 'v8::Value::Int32Value()'
             return { std::int64_t(value->Int32Value()) };
                                                     ^
In file included from /mapbox-gl-native/build/headers/node/v15.8.0/node.h:63,
                 from /mapbox-gl-native/build/headers/nan/2.10.0/nan.h:51,
                 from /mapbox-gl-native/platform/node/src/node_conversion.hpp:6,
                 from /mapbox-gl-native/platform/node/src/node_expression.cpp:1:
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:2915:40: note: candidate: 'v8::Maybe<int> v8::Value::Int32Value(v8::Local<v8::Context>) const'
   V8_WARN_UNUSED_RESULT Maybe<int32_t> Int32Value(Local<Context> context) const;
                                        ^~~~~~~~~~
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:2915:40: note:   candidate expects 1 argument, 0 provided
In file included from /mapbox-gl-native/platform/node/src/node_expression.cpp:1:
/mapbox-gl-native/platform/node/src/node_conversion.hpp:119:56: error: could not convert '{<expression error>}' from '<brace-enclosed initializer list>' to 'mbgl::optional<mapbox::feature::value>' {aka 'std::experimental::optional<mapbox::feature::value>'}
             return { std::int64_t(value->Int32Value()) };
                                                        ^
/mapbox-gl-native/platform/node/src/node_conversion.hpp:121:41: error: no matching function for call to 'v8::Value::NumberValue()'
             return { value->NumberValue() };
                                         ^
In file included from /mapbox-gl-native/build/headers/node/v15.8.0/node.h:63,
                 from /mapbox-gl-native/build/headers/nan/2.10.0/nan.h:51,
                 from /mapbox-gl-native/platform/node/src/node_conversion.hpp:6,
                 from /mapbox-gl-native/platform/node/src/node_expression.cpp:1:
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:2907:39: note: candidate: 'v8::Maybe<double> v8::Value::NumberValue(v8::Local<v8::Context>) const'
   V8_WARN_UNUSED_RESULT Maybe<double> NumberValue(Local<Context> context) const;
                                       ^~~~~~~~~~~
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:2907:39: note:   candidate expects 1 argument, 0 provided
In file included from /mapbox-gl-native/platform/node/src/node_expression.cpp:1:
/mapbox-gl-native/platform/node/src/node_conversion.hpp:121:43: error: could not convert '{<expression error>}' from '<brace-enclosed initializer list>' to 'mbgl::optional<mapbox::feature::value>' {aka 'std::experimental::optional<mapbox::feature::value>'}
             return { value->NumberValue() };
                                           ^
/mapbox-gl-native/platform/node/src/node_conversion.hpp: In static member function 'static mbgl::optional<mapbox::util::variant<mapbox::geometry::geometry<double, std::vector>, mapbox::feature::feature<double>, mapbox::feature::feature_collection<double, std::vector> > > mbgl::style::conversion::ConversionTraits<v8::Local<v8::Value> >::toGeoJSON(const v8::Local<v8::Value>&, mbgl::style::conversion::Error&)':
/mapbox-gl-native/platform/node/src/node_conversion.hpp:130:82: error: no matching function for call to 'v8::Value::ToObject()'
             std::string string = *Nan::Utf8String(JSON.Stringify(value->ToObject()).ToLocalChecked());
                                                                                  ^
In file included from /mapbox-gl-native/build/headers/node/v15.8.0/node.h:63,
                 from /mapbox-gl-native/build/headers/nan/2.10.0/nan.h:51,
                 from /mapbox-gl-native/platform/node/src/node_conversion.hpp:6,
                 from /mapbox-gl-native/platform/node/src/node_expression.cpp:1:
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:2868:44: note: candidate: 'v8::MaybeLocal<v8::Object> v8::Value::ToObject(v8::Local<v8::Context>) const'
   V8_WARN_UNUSED_RESULT MaybeLocal<Object> ToObject(
                                            ^~~~~~~~
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:2868:44: note:   candidate expects 1 argument, 0 provided
/mapbox-gl-native/platform/node/src/node_expression.cpp: In static member function 'static void node_mbgl::NodeExpression::Init(v8::Local<v8::Object>)':
/mapbox-gl-native/platform/node/src/node_expression.cpp:33:40: error: no matching function for call to 'v8::FunctionTemplate::GetFunction()'
     constructor.Reset(tpl->GetFunction()); // what is this doing?
                                        ^
In file included from /mapbox-gl-native/build/headers/node/v15.8.0/node.h:63,
                 from /mapbox-gl-native/build/headers/nan/2.10.0/nan.h:51,
                 from /mapbox-gl-native/platform/node/src/node_conversion.hpp:6,
                 from /mapbox-gl-native/platform/node/src/node_expression.cpp:1:
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:6497:46: note: candidate: 'v8::MaybeLocal<v8::Function> v8::FunctionTemplate::GetFunction(v8::Local<v8::Context>)'
   V8_WARN_UNUSED_RESULT MaybeLocal<Function> GetFunction(
                                              ^~~~~~~~~~~
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:6497:46: note:   candidate expects 1 argument, 0 provided
/mapbox-gl-native/platform/node/src/node_expression.cpp:34:80: error: no matching function for call to 'v8::FunctionTemplate::GetFunction()'
     Nan::Set(target, Nan::New("Expression").ToLocalChecked(), tpl->GetFunction());
                                                                                ^
In file included from /mapbox-gl-native/build/headers/node/v15.8.0/node.h:63,
                 from /mapbox-gl-native/build/headers/nan/2.10.0/nan.h:51,
                 from /mapbox-gl-native/platform/node/src/node_conversion.hpp:6,
                 from /mapbox-gl-native/platform/node/src/node_expression.cpp:1:
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:6497:46: note: candidate: 'v8::MaybeLocal<v8::Function> v8::FunctionTemplate::GetFunction(v8::Local<v8::Context>)'
   V8_WARN_UNUSED_RESULT MaybeLocal<Function> GetFunction(
                                              ^~~~~~~~~~~
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:6497:46: note:   candidate expects 1 argument, 0 provided
/mapbox-gl-native/platform/node/src/node_expression.cpp: In function 'mbgl::style::expression::type::Type node_mbgl::parseType(v8::Local<v8::Object>)':
/mapbox-gl-native/platform/node/src/node_expression.cpp:49:51: error: no matching function for call to 'v8::String::Utf8Value::Utf8Value(v8::Local<v8::Value>&)'
     std::string kind(*v8::String::Utf8Value(v8kind));
                                                   ^
In file included from /mapbox-gl-native/build/headers/node/v15.8.0/node.h:63,
                 from /mapbox-gl-native/build/headers/nan/2.10.0/nan.h:51,
                 from /mapbox-gl-native/platform/node/src/node_conversion.hpp:6,
                 from /mapbox-gl-native/platform/node/src/node_expression.cpp:1:
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:3333:5: note: candidate: 'v8::String::Utf8Value::Utf8Value(v8::Isolate*, v8::Local<v8::Value>)'
     Utf8Value(Isolate* isolate, Local<v8::Value> obj);
     ^~~~~~~~~
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:3333:5: note:   candidate expects 2 arguments, 1 provided
/mapbox-gl-native/platform/node/src/node_expression.cpp:52:122: error: no matching function for call to 'v8::Value::ToObject()'
         type::Type itemType = parseType(Nan::Get(type, Nan::New("itemType").ToLocalChecked()).ToLocalChecked()->ToObject());
                                                                                                                          ^
In file included from /mapbox-gl-native/build/headers/node/v15.8.0/node.h:63,
                 from /mapbox-gl-native/build/headers/nan/2.10.0/nan.h:51,
                 from /mapbox-gl-native/platform/node/src/node_conversion.hpp:6,
                 from /mapbox-gl-native/platform/node/src/node_expression.cpp:1:
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:2868:44: note: candidate: 'v8::MaybeLocal<v8::Object> v8::Value::ToObject(v8::Local<v8::Context>) const'
   V8_WARN_UNUSED_RESULT MaybeLocal<Object> ToObject(
                                            ^~~~~~~~
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:2868:44: note:   candidate expects 1 argument, 0 provided
/mapbox-gl-native/platform/node/src/node_expression.cpp: In static member function 'static void node_mbgl::NodeExpression::Parse(const Nan::FunctionCallbackInfo<v8::Value>&)':
/mapbox-gl-native/platform/node/src/node_expression.cpp:74:48: error: no matching function for call to 'v8::Value::ToObject()'
         expected = parseType(info[1]->ToObject());
                                                ^
In file included from /mapbox-gl-native/build/headers/node/v15.8.0/node.h:63,
                 from /mapbox-gl-native/build/headers/nan/2.10.0/nan.h:51,
                 from /mapbox-gl-native/platform/node/src/node_conversion.hpp:6,
                 from /mapbox-gl-native/platform/node/src/node_expression.cpp:1:
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:2868:44: note: candidate: 'v8::MaybeLocal<v8::Object> v8::Value::ToObject(v8::Local<v8::Context>) const'
   V8_WARN_UNUSED_RESULT MaybeLocal<Object> ToObject(
                                            ^~~~~~~~
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:2868:44: note:   candidate expects 1 argument, 0 provided
/mapbox-gl-native/platform/node/src/node_expression.cpp: In member function 'v8::Local<v8::Value> node_mbgl::ToValue::operator()(const std::vector<mbgl::style::expression::Value>&)':
/mapbox-gl-native/platform/node/src/node_expression.cpp:161:42: error: no matching function for call to 'v8::Array::Set(std::size_t&, v8::Local<v8::Value>)'
             result->Set(i, toJS(array[i]));
                                          ^
In file included from /mapbox-gl-native/build/headers/node/v15.8.0/node.h:63,
                 from /mapbox-gl-native/build/headers/nan/2.10.0/nan.h:51,
                 from /mapbox-gl-native/platform/node/src/node_conversion.hpp:6,
                 from /mapbox-gl-native/platform/node/src/node_expression.cpp:1:
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:3716:37: note: candidate: 'v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, v8::Local<v8::Value>, v8::Local<v8::Value>)'
   V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context,
                                     ^~~
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:3716:37: note:   candidate expects 3 arguments, 2 provided
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:3719:37: note: candidate: 'v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, uint32_t, v8::Local<v8::Value>)'
   V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context, uint32_t index,
                                     ^~~
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:3719:37: note:   candidate expects 3 arguments, 2 provided
/mapbox-gl-native/platform/node/src/node_expression.cpp: In static member function 'static void node_mbgl::NodeExpression::Evaluate(const Nan::FunctionCallbackInfo<v8::Value>&)':
/mapbox-gl-native/platform/node/src/node_expression.cpp:241:62: error: no matching function for call to 'v8::Value::ToObject()'
     v8::Local<v8::Value> v8zoom = Nan::Get(info[0]->ToObject(), Nan::New("zoom").ToLocalChecked()).ToLocalChecked();
                                                              ^
In file included from /mapbox-gl-native/build/headers/node/v15.8.0/node.h:63,
                 from /mapbox-gl-native/build/headers/nan/2.10.0/nan.h:51,
                 from /mapbox-gl-native/platform/node/src/node_conversion.hpp:6,
                 from /mapbox-gl-native/platform/node/src/node_expression.cpp:1:
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:2868:44: note: candidate: 'v8::MaybeLocal<v8::Object> v8::Value::ToObject(v8::Local<v8::Context>) const'
   V8_WARN_UNUSED_RESULT MaybeLocal<Object> ToObject(
                                            ^~~~~~~~
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:2868:44: note:   candidate expects 1 argument, 0 provided
/mapbox-gl-native/platform/node/src/node_expression.cpp:242:56: error: no matching function for call to 'v8::Value::NumberValue()'
     if (v8zoom->IsNumber()) zoom = v8zoom->NumberValue();
                                                        ^
In file included from /mapbox-gl-native/build/headers/node/v15.8.0/node.h:63,
                 from /mapbox-gl-native/build/headers/nan/2.10.0/nan.h:51,
                 from /mapbox-gl-native/platform/node/src/node_conversion.hpp:6,
                 from /mapbox-gl-native/platform/node/src/node_expression.cpp:1:
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:2907:39: note: candidate: 'v8::Maybe<double> v8::Value::NumberValue(v8::Local<v8::Context>) const'
   V8_WARN_UNUSED_RESULT Maybe<double> NumberValue(Local<Context> context) const;
                                       ^~~~~~~~~~~
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:2907:39: note:   candidate expects 1 argument, 0 provided
/mapbox-gl-native/platform/node/src/node_expression.cpp:245:72: error: no matching function for call to 'v8::Value::ToObject()'
     v8::Local<v8::Value> v8heatmapDensity = Nan::Get(info[0]->ToObject(), Nan::New("heatmapDensity").ToLocalChecked()).ToLocalChecked();
                                                                        ^
In file included from /mapbox-gl-native/build/headers/node/v15.8.0/node.h:63,
                 from /mapbox-gl-native/build/headers/nan/2.10.0/nan.h:51,
                 from /mapbox-gl-native/platform/node/src/node_conversion.hpp:6,
                 from /mapbox-gl-native/platform/node/src/node_expression.cpp:1:
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:2868:44: note: candidate: 'v8::MaybeLocal<v8::Object> v8::Value::ToObject(v8::Local<v8::Context>) const'
   V8_WARN_UNUSED_RESULT MaybeLocal<Object> ToObject(
                                            ^~~~~~~~
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:2868:44: note:   candidate expects 1 argument, 0 provided
/mapbox-gl-native/platform/node/src/node_expression.cpp:246:86: error: no matching function for call to 'v8::Value::NumberValue()'
     if (v8heatmapDensity->IsNumber()) heatmapDensity = v8heatmapDensity->NumberValue();
                                                                                      ^
In file included from /mapbox-gl-native/build/headers/node/v15.8.0/node.h:63,
                 from /mapbox-gl-native/build/headers/nan/2.10.0/nan.h:51,
                 from /mapbox-gl-native/platform/node/src/node_conversion.hpp:6,
                 from /mapbox-gl-native/platform/node/src/node_expression.cpp:1:
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:2907:39: note: candidate: 'v8::Maybe<double> v8::Value::NumberValue(v8::Local<v8::Context>) const'
   V8_WARN_UNUSED_RESULT Maybe<double> NumberValue(Local<Context> context) const;
                                       ^~~~~~~~~~~
/mapbox-gl-native/build/headers/node/v15.8.0/v8.h:2907:39: note:   candidate expects 1 argument, 0 provided
make[2]: *** [platform/node/CMakeFiles/mbgl-node.abi-88.dir/build.make:63: platform/node/CMakeFiles/mbgl-node.abi-88.dir/src/node_expression.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:1760: platform/node/CMakeFiles/mbgl-node.abi-88.dir/all] Error 2
make: *** [Makefile:141: all] Error 2

tonnyavery avatar Feb 07 '21 13:02 tonnyavery

I can reproduce this failure.

For me the build succeeds if I leave out the RUN npm update line in the above Dockerfile (which probably upgrades some packages to versions which cause the problems).

gwimmel avatar Mar 03 '21 21:03 gwimmel