Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-65692

MinGW/GCC 5.7.2: Failure in linking mapboxgl plugin

    XMLWordPrintable

Details

    • Bug
    • Resolution: Invalid
    • Not Evaluated
    • None
    • 5.9.4
    • None
    • x86_64-7.2.0-release-posix-seh-rt_v5_rev0

    Description

      Building Qt 5.9 from git with a newer MinGW-gcc 7.2.0 fails while linking the mapboxgl plugin:

      g++ -shared -Wl,-subsystem,windows -Wl,--out-implib,Q:\5.9\mingw-builds-5.7.2-64\qtbase\plugins\geoservices\libqtgeoservices_mapboxgld.a -o Q:\5.9\mingw-builds-5.7.2-64\qtbase\plugins\geoservices\qtgeoservices_mapboxgld.dll .obj/debug/qgeoserviceproviderpluginmapboxgl.o .obj/debug/qgeomappingmanagerenginemapboxgl.o .obj/debug/qgeomapmapboxgl.o .obj/debug/qmapboxglstylechange.o .obj/debug/qsgmapboxglnode.o .obj/debug/qrc_mapboxgl.o .obj/debug/moc_qgeoserviceproviderpluginmapboxgl.o .obj/debug/moc_qgeomappingmanagerenginemapboxgl.o .obj/debug/moc_qgeomapmapboxgl.o  -lglu32 -lopengl32 -lgdi32 -luser32 -LQ:\5.9\mingw-builds-5.7.2-64\qtbase\lib Q:\5.9\mingw-builds-5.7.2-64\qtbase\lib\libQt5Locationd.a Q:\5.9\mingw-builds-5.7.2-64\qtbase\lib\libQt5Quickd.a Q:\5.9\mingw-builds-5.7.2-64\qtbase\lib\libQt5Guid.a Q:\5.9\mingw-builds-5.7.2-64\qtbase\lib\libQt5Qmld.a Q:\5.9\mingw-builds-5.7.2-64\qtbase\lib\libQt5Networkd.a Q:\5.9\mingw-builds-5.7.2-64\qtbase\lib\libQt5Positioningd.a Q:\5.9\mingw-builds-5.7.2-64\qtbase\lib\libQt5Sqld.a Q:\5.9\mingw-builds-5.7.2-64\qtbase\lib\libQt5Cored.a .obj\debug\qtgeoservices_mapboxgld_resource_res.o Q:\5.9\mingw-builds-5.7.2-64\qtbase\lib\libqmapboxgld.a -lglu32 -lopengl32 -lgdi32 -luser32 -LQ:\5.9\mingw-builds-5.7.2-64\qtbase\lib Q:\5.9\mingw-builds-5.7.2-64\qtbase\lib\libQt5Networkd.a Q:\5.9\mingw-builds-5.7.2-64\qtbase\lib\libQt5Guid.a Q:\5.9\mingw-builds-5.7.2-64\qtbase\lib\libQt5Sqld.a Q:\5.9\mingw-builds-5.7.2-64\qtbase\lib\libQt5Cored.a -lz
      Q:\5.9\mingw-builds-5.7.2-64\qtbase\lib\libqmapboxgld.a(value.o): In function `mbgl::gl::value::BlendEquation::Set(mbgl::gl::ColorMode::BlendEquation const&)':
      Q:/5.9/src/qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/gl/value.cpp:185: undefined reference to `glBlendEquation'
      Q:\5.9\mingw-builds-5.7.2-64\qtbase\lib\libqmapboxgld.a(value.o): In function `mbgl::gl::value::BlendColor::Set(mbgl::Color const&)':
      Q:/5.9/src/qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/gl/value.cpp:212: undefined reference to `glBlendColor'
      Q:\5.9\mingw-builds-5.7.2-64\qtbase\lib\libqmapboxgld.a(value.o): In function `mbgl::gl::value::Program::Set(unsigned int const&)':
      Q:/5.9/src/qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/gl/value.cpp:224: undefined reference to `glUseProgram'
      Q:\5.9\mingw-builds-5.7.2-64\qtbase\lib\libqmapboxgld.a(value.o): In function `mbgl::gl::value::ActiveTexture::Set(unsigned char const&)':
      Q:/5.9/src/qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/gl/value.cpp:248: undefined reference to `glActiveTexture'
      Q:\5.9\mingw-builds-5.7.2-64\qtbase\lib\libqmapboxgld.a(value.o): In function `mbgl::gl::value::BindFramebuffer::Set(unsigned int const&)':
      Q:/5.9/src/qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/gl/value.cpp:285: undefined reference to `glBindFramebuffer'
      Q:\5.9\mingw-builds-5.7.2-64\qtbase\lib\libqmapboxgld.a(value.o): In function `mbgl::gl::value::BindRenderbuffer::Set(unsigned int const&)':
      Q:/5.9/src/qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/gl/value.cpp:297: undefined reference to `glBindRenderbuffer'
      Q:\5.9\mingw-builds-5.7.2-64\qtbase\lib\libqmapboxgld.a(value.o): In function `mbgl::gl::value::BindVertexBuffer::Set(unsigned int const&)':
      Q:/5.9/src/qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/gl/value.cpp:321: undefined reference to `glBindBuffer'
      Q:\5.9\mingw-builds-5.7.2-64\qtbase\lib\libqmapboxgld.a(value.o): In function `mbgl::gl::value::BindElementBuffer::Set(unsigned int const&)':
      Q:/5.9/src/qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/gl/value.cpp:333: undefined reference to `glBindBuffer'
      Q:\5.9\mingw-builds-5.7.2-64\qtbase\lib\libqmapboxgld.a(value.o): In function `mbgl::gl::value::VertexAttribute::Set(std::experimental::fundamentals_v1::optional<mbgl::gl::AttributeBinding> const&, mbgl::gl::Context&, unsigned int)':
      Q:/5.9/src/qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/gl/value.cpp:373: undefined reference to `glEnableVertexAttribArray'
      Q:/5.9/src/qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/gl/value.cpp:374: undefined reference to `glVertexAttribPointer'
      Q:/5.9/src/qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/gl/value.cpp:382: undefined reference to `glDisableVertexAttribArray'
      Q:\5.9\mingw-builds-5.7.2-64\qtbase\lib\libqmapboxgld.a(context.o): In function `bindDepthStencilRenderbuffer':
      Q:/5.9/src/qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/gl/context.cpp:397: undefined reference to `glFramebufferRenderbuffer'
      Q:\5.9\mingw-builds-5.7.2-64\qtbase\lib\libqmapboxgld.a(context.o): In function `checkFramebuffer':
      Q:/5.9/src/qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/gl/context.cpp:366: undefined reference to `glCheckFramebufferStatus'
      Q:\5.9\mingw-builds-5.7.2-64\qtbase\lib\libqmapboxgld.a(context.o): In function `mbgl::gl::Context::createShader(mbgl::gl::ShaderType, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)':
      Q:/5.9/src/qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/gl/context.cpp:140: undefined reference to `glCreateShader'
      Q:/5.9/src/qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/gl/context.cpp:144: undefined reference to `glShaderSource'
      Q:/5.9/src/qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/gl/context.cpp:145: undefined reference to `glCompileShader'
      Q:/5.9/src/qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/gl/context.cpp:148: undefined reference to `glGetShaderiv'
      Q:/5.9/src/qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/gl/context.cpp:154: undefined reference to `glGetShaderiv'
      Q:/5.9/src/qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/gl/context.cpp:157: undefined reference to `glGetShaderInfoLog'
      Q:\5.9\mingw-builds-5.7.2-64\qtbase\lib\libqmapboxgld.a(context.o): In function `mbgl::gl::Context::createProgram(unsigned int, unsigned int)':
      Q:/5.9/src/qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/gl/context.cpp:165: undefined reference to `glCreateProgram'
      Q:/5.9/src/qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/gl/context.cpp:167: undefined reference to `glAttachShader'
      Q:/5.9/src/qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/gl/context.cpp:168: undefined reference to `glAttachShader'
      Q:\5.9\mingw-builds-5.7.2-64\qtbase\lib\libqmapboxgld.a(context.o): In function `mbgl::gl::Context::verifyProgramLinkage(unsigned int)':
      Q:/5.9/src/qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/gl/context.cpp:197: undefined reference to `glGetProgramiv'
      Q:/5.9/src/qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/gl/context.cpp:203: undefined reference to `glGetProgramiv'
      Q:/5.9/src/qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/gl/context.cpp:206: undefined reference to `glGetProgramInfoLog'
      Q:\5.9\mingw-builds-5.7.2-64\qtbase\lib\libqmapboxgld.a(context.o): In function `mbgl::gl::Context::linkProgram(unsigned int)':
      Q:/5.9/src/qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/gl/context.cpp:191: undefined reference to `glLinkProgram'
      Q:\5.9\mingw-builds-5.7.2-64\qtbase\lib\libqmapboxgld.a(context.o): In function `mbgl::gl::Context::createProgram(unsigned int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)':
      Q:/5.9/src/qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/gl/context.cpp:177: undefined reference to `glCreateProgram'
      Q:\5.9\mingw-builds-5.7.2-64\qtbase\lib\libqmapboxgld.a(context.o): In function `mbgl::gl::Context::createVertexBuffer(void const*, unsigned long long, mbgl::gl::BufferUsage)':
      Q:/5.9/src/qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/gl/context.cpp:215: undefined reference to `glGenBuffers'
      Q:/5.9/src/qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/gl/context.cpp:218: undefined reference to `glBufferData'
      Q:\5.9\mingw-builds-5.7.2-64\qtbase\lib\libqmapboxgld.a(context.o): In function `mbgl::gl::Context::updateVertexBuffer(std_experimental::unique_resource<unsigned int, mbgl::gl::detail::BufferDeleter>&, void const*, unsigned long long)':
      Q:/5.9/src/qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/gl/context.cpp:224: undefined reference to `glBufferSubData'
      Q:\5.9\mingw-builds-5.7.2-64\qtbase\lib\libqmapboxgld.a(context.o): In function `mbgl::gl::Context::createIndexBuffer(void const*, unsigned long long)':
      Q:/5.9/src/qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/gl/context.cpp:229: undefined reference to `glGenBuffers'
      Q:/5.9/src/qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/gl/context.cpp:233: undefined reference to `glBufferData'
      Q:\5.9\mingw-builds-5.7.2-64\qtbase\lib\libqmapboxgld.a(context.o): In function `mbgl::gl::Context::createFramebuffer()':
      Q:/5.9/src/qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/gl/context.cpp:312: undefined reference to `glGenFramebuffers'
      Q:\5.9\mingw-builds-5.7.2-64\qtbase\lib\libqmapboxgld.a(context.o): In function `mbgl::gl::Context::createRenderbuffer(mbgl::gl::RenderbufferType, mbgl::Size)':
      Q:/5.9/src/qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/gl/context.cpp:318: undefined reference to `glGenRenderbuffers'
      Q:/5.9/src/qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/gl/context.cpp:322: undefined reference to `glRenderbufferStorage'
      Q:\5.9\mingw-builds-5.7.2-64\qtbase\lib\libqmapboxgld.a(context.o): In function `mbgl::gl::Context::createFramebuffer(mbgl::gl::Renderbuffer<(mbgl::gl::RenderbufferType)32856> const&, mbgl::gl::Renderbuffer<(mbgl::gl::RenderbufferType)35056> const&)':
      Q:/5.9/src/qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/gl/context.cpp:417: undefined reference to `glFramebufferRenderbuffer'
      Q:\5.9\mingw-builds-5.7.2-64\qtbase\lib\libqmapboxgld.a(context.o): In function `mbgl::gl::Context::createFramebuffer(mbgl::gl::Renderbuffer<(mbgl::gl::RenderbufferType)32856> const&)':
      Q:/5.9/src/qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/gl/context.cpp:427: undefined reference to `glFramebufferRenderbuffer'
      Q:\5.9\mingw-builds-5.7.2-64\qtbase\lib\libqmapboxgld.a(context.o): In function `mbgl::gl::Context::createFramebuffer(mbgl::gl::Texture const&, mbgl::gl::Renderbuffer<(mbgl::gl::RenderbufferType)35056> const&)':
      Q:/5.9/src/qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/gl/context.cpp:441: undefined reference to `glFramebufferTexture2D'
      Q:\5.9\mingw-builds-5.7.2-64\qtbase\lib\libqmapboxgld.a(context.o): In function `mbgl::gl::Context::createFramebuffer(mbgl::gl::Texture const&)':
      Q:/5.9/src/qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/gl/context.cpp:451: undefined reference to `glFramebufferTexture2D'
      Q:\5.9\mingw-builds-5.7.2-64\qtbase\lib\libqmapboxgld.a(context.o): In function `mbgl::gl::Context::createFramebuffer(mbgl::gl::Texture const&, mbgl::gl::Renderbuffer<(mbgl::gl::RenderbufferType)6402> const&)':
      Q:/5.9/src/qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/gl/context.cpp:462: undefined reference to `glFramebufferTexture2D'
      Q:/5.9/src/qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/gl/context.cpp:463: undefined reference to `glFramebufferRenderbuffer'
      Q:\5.9\mingw-builds-5.7.2-64\qtbase\lib\libqmapboxgld.a(context.o): In function `mbgl::gl::Context::performCleanup()':
      Q:/5.9/src/qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/gl/context.cpp:689: undefined reference to `glDeleteProgram'
      Q:/5.9/src/qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/gl/context.cpp:694: undefined reference to `glDeleteShader'
      Q:/5.9/src/qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/gl/context.cpp:706: undefined reference to `glDeleteBuffers'
      Q:/5.9/src/qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/gl/context.cpp:738: undefined reference to `glDeleteFramebuffers'
      Q:/5.9/src/qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/gl/context.cpp:744: undefined reference to `glDeleteRenderbuffers'
      Q:\5.9\mingw-builds-5.7.2-64\qtbase\lib\libqmapboxgld.a(context.o): In function `mbgl::gl::Context::getBinaryProgram[abi:cxx11](unsigned int) const':
      Q:/5.9/src/qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/gl/context.cpp:280: undefined reference to `glGetProgramiv'
      Q:\5.9\mingw-builds-5.7.2-64\qtbase\lib\libqmapboxgld.a(uniform.o): In function `mbgl::gl::uniformLocation(unsigned int, char const*)':
      Q:/5.9/src/qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/gl/uniform.cpp:13: undefined reference to `glGetUniformLocation'
      Q:\5.9\mingw-builds-5.7.2-64\qtbase\lib\libqmapboxgld.a(uniform.o): In function `void mbgl::gl::bindUniform<float>(int, float const&)':
      Q:/5.9/src/qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/gl/uniform.cpp:18: undefined reference to `glUniform1f'
      Q:\5.9\mingw-builds-5.7.2-64\qtbase\lib\libqmapboxgld.a(uniform.o): In function `void mbgl::gl::bindUniform<int>(int, int const&)':
      Q:/5.9/src/qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/gl/uniform.cpp:23: undefined reference to `glUniform1i'
      Q:\5.9\mingw-builds-5.7.2-64\qtbase\lib\libqmapboxgld.a(uniform.o): In function `void mbgl::gl::bindUniform<std::array<float, 2ull> >(int, std::array<float, 2ull> const&)':
      Q:/5.9/src/qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/gl/uniform.cpp:28: undefined reference to `glUniform2fv'
      Q:\5.9\mingw-builds-5.7.2-64\qtbase\lib\libqmapboxgld.a(uniform.o): In function `void mbgl::gl::bindUniform<std::array<float, 3ull> >(int, std::array<float, 3ull> const&)':
      Q:/5.9/src/qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/gl/uniform.cpp:33: undefined reference to `glUniform3fv'
      Q:\5.9\mingw-builds-5.7.2-64\qtbase\lib\libqmapboxgld.a(uniform.o): In function `void mbgl::gl::bindUniform<std::array<float, 4ull> >(int, std::array<float, 4ull> const&)':
      Q:/5.9/src/qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/gl/uniform.cpp:38: undefined reference to `glUniform4fv'
      Q:\5.9\mingw-builds-5.7.2-64\qtbase\lib\libqmapboxgld.a(uniform.o): In function `void mbgl::gl::bindUniform<std::array<double, 4ull> >(int, std::array<double, 4ull> const&)':
      Q:/5.9/src/qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/gl/uniform.cpp:43: undefined reference to `glUniformMatrix2fv'
      Q:\5.9\mingw-builds-5.7.2-64\qtbase\lib\libqmapboxgld.a(uniform.o): In function `void mbgl::gl::bindUniform<std::array<double, 9ull> >(int, std::array<double, 9ull> const&)':
      Q:/5.9/src/qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/gl/uniform.cpp:48: undefined reference to `glUniformMatrix3fv'
      Q:\5.9\mingw-builds-5.7.2-64\qtbase\lib\libqmapboxgld.a(uniform.o): In function `void mbgl::gl::bindUniform<std::array<double, 16ull> >(int, std::array<double, 16ull> const&)':
      Q:/5.9/src/qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/gl/uniform.cpp:53: undefined reference to `glUniformMatrix4fv'
      Q:\5.9\mingw-builds-5.7.2-64\qtbase\lib\libqmapboxgld.a(attribute.o): In function `mbgl::gl::bindAttributeLocation(unsigned int, unsigned int, char const*)':
      Q:/5.9/src/qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/gl/attribute.cpp:11: undefined reference to `glBindAttribLocation'
      Q:\5.9\mingw-builds-5.7.2-64\qtbase\lib\libqmapboxgld.a(attribute.o): In function `mbgl::gl::getActiveAttributes[abi:cxx11](unsigned int)':
      Q:/5.9/src/qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/gl/attribute.cpp:18: undefined reference to `glGetProgramiv'
      Q:/5.9/src/qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/gl/attribute.cpp:21: undefined reference to `glGetProgramiv'
      Q:/5.9/src/qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/gl/attribute.cpp:31: undefined reference to `glGetActiveAttrib'
      collect2.exe: error: ld returned 1 exit status
      

      It seems that the plugin fails to link against opengl32

      Attachments

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

        Activity

          People

            paangele Paolo Angelelli
            kkohne Kai Köhne
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes