Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 21 Nov 2021 16:01:07 +0000
From:      bugzilla-noreply@freebsd.org
To:        ports-bugs@FreeBSD.org
Subject:   [Bug 259967] graphics/qgis: broken on CURRENT since intro of llvm13 in base
Message-ID:  <bug-259967-7788@https.bugs.freebsd.org/bugzilla/>

next in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D259967

            Bug ID: 259967
           Summary: graphics/qgis: broken on CURRENT since intro of llvm13
                    in base
           Product: Ports & Packages
           Version: Latest
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Only Me
          Priority: ---
         Component: Individual Port(s)
          Assignee: ports-bugs@FreeBSD.org
          Reporter: rhurlin@FreeBSD.org

Since about two weeks there are problems building graphics/qgis under
14.0-CURRENT. The build aborts both in Poudriere and outside in non-clean b=
uild
environments with the following error message:


--------------------------------------
[..snip..]
[  1%] Building CXX object
src/core/CMakeFiles/qgis_core.dir/providers/ogr/qgsogrproviderutils.cpp.o
cd /usr/ports/graphics/qgis/work/.build/src/core && /usr/bin/c++
-DPROJ_VERSION_MAJOR=3D7 -DQT_CONCURRENT_LIB -DQT_CORE_LIB
-DQT_DEPRECATED_WARNINGS -DQT_DISABLE_DEPRECATED_BEFORE=3D0x050800 -DQT_GUI=
_LIB
-DQT_NETWORK_LIB -DQT_NO_CAST_TO_ASCII -DQT_NO_DEBUG -DQT_NO_FOREACH
-DQT_POSITIONING_LIB -DQT_PRINTSUPPORT_LIB -DQT_SERIALPORT_LIB -DQT_SQL_LIB
-DQT_SVG_LIB -DQT_USE_QSTRINGBUILDER -DQT_WEBKITWIDGETS_LIB -DQT_WEBKIT_LIB
-DQT_WIDGETS_LIB -DQT_XML_LIB -DSIP_VERSION=3D0x050500
-DTEST_DATA_DIR=3D\"/usr/ports/graphics/qgis/work/QGIS-final-3_22_1/tests/t=
estdata\"
-DWITH_EPT -DWITH_QTWEBKIT -D_HAVE_PTHREAD_
-D_LIBCPP_ENABLE_CXX17_REMOVED_AUTO_PTR -Dqgis_core_EXPORTS
-I/usr/ports/graphics/qgis/work/.build/src/core/qgis_core_autogen/include
-I/usr/ports/graphics/qgis/work/.build
-I/usr/ports/graphics/qgis/work/QGIS-final-3_22_1/external/poly2tri
-I/usr/ports/graphics/qgis/work/QGIS-final-3_22_1/src/core/providers/ept
-I/usr/ports/graphics/qgis/work/.build/src/core
-I/usr/ports/graphics/qgis/work/QGIS-final-3_22_1/src/core
-I/usr/ports/graphics/qgis/work/QGIS-final-3_22_1/src/core/3d
-I/usr/ports/graphics/qgis/work/QGIS-final-3_22_1/src/core/annotations
-I/usr/ports/graphics/qgis/work/QGIS-final-3_22_1/src/core/auth
-I/usr/ports/graphics/qgis/work/QGIS-final-3_22_1/src/core/browser
-I/usr/ports/graphics/qgis/work/QGIS-final-3_22_1/src/core/callouts
-I/usr/ports/graphics/qgis/work/QGIS-final-3_22_1/src/core/classification
-I/usr/ports/graphics/qgis/work/QGIS-final-3_22_1/src/core/diagram
-I/usr/ports/graphics/qgis/work/QGIS-final-3_22_1/src/core/dxf
-I/usr/ports/graphics/qgis/work/QGIS-final-3_22_1/src/core/editform
-I/usr/ports/graphics/qgis/work/QGIS-final-3_22_1/src/core/effects
-I/usr/ports/graphics/qgis/work/QGIS-final-3_22_1/src/core/expression
-I/usr/ports/graphics/qgis/work/QGIS-final-3_22_1/src/core/externalstorage
-I/usr/ports/graphics/qgis/work/QGIS-final-3_22_1/src/core/fieldformatter
-I/usr/ports/graphics/qgis/work/QGIS-final-3_22_1/src/core/geometry
-I/usr/ports/graphics/qgis/work/QGIS-final-3_22_1/src/core/geocms
-I/usr/ports/graphics/qgis/work/QGIS-final-3_22_1/src/core/geocms/geonode
-I/usr/ports/graphics/qgis/work/QGIS-final-3_22_1/src/core/geocoding
-I/usr/ports/graphics/qgis/work/QGIS-final-3_22_1/src/core/gps
-I/usr/ports/graphics/qgis/work/QGIS-final-3_22_1/src/core/labeling
-I/usr/ports/graphics/qgis/work/QGIS-final-3_22_1/src/core/layertree
-I/usr/ports/graphics/qgis/work/QGIS-final-3_22_1/src/core/layout
-I/usr/ports/graphics/qgis/work/QGIS-final-3_22_1/src/core/locator
-I/usr/ports/graphics/qgis/work/QGIS-final-3_22_1/src/core/maprenderer
-I/usr/ports/graphics/qgis/work/QGIS-final-3_22_1/src/core/mesh
-I/usr/ports/graphics/qgis/work/QGIS-final-3_22_1/src/core/metadata
-I/usr/ports/graphics/qgis/work/QGIS-final-3_22_1/src/core/network
-I/usr/ports/graphics/qgis/work/QGIS-final-3_22_1/src/core/numericformats
-I/usr/ports/graphics/qgis/work/QGIS-final-3_22_1/src/core/pal
-I/usr/ports/graphics/qgis/work/QGIS-final-3_22_1/src/core/pointcloud
-I/usr/ports/graphics/qgis/work/QGIS-final-3_22_1/src/core/processing
-I/usr/ports/graphics/qgis/work/QGIS-final-3_22_1/src/core/processing/models
-I/usr/ports/graphics/qgis/work/QGIS-final-3_22_1/src/core/proj
-I/usr/ports/graphics/qgis/work/QGIS-final-3_22_1/src/core/project
-I/usr/ports/graphics/qgis/work/QGIS-final-3_22_1/src/core/providers
-I/usr/ports/graphics/qgis/work/QGIS-final-3_22_1/src/core/providers/arcgis
-I/usr/ports/graphics/qgis/work/QGIS-final-3_22_1/src/core/providers/memory
-I/usr/ports/graphics/qgis/work/QGIS-final-3_22_1/src/core/providers/gdal
-I/usr/ports/graphics/qgis/work/QGIS-final-3_22_1/src/core/providers/ogr
-I/usr/ports/graphics/qgis/work/QGIS-final-3_22_1/src/core/providers/meshme=
mory
-I/usr/ports/graphics/qgis/work/QGIS-final-3_22_1/src/core/raster
-I/usr/ports/graphics/qgis/work/QGIS-final-3_22_1/src/core/renderer
-I/usr/ports/graphics/qgis/work/QGIS-final-3_22_1/src/core/scalebar
-I/usr/ports/graphics/qgis/work/QGIS-final-3_22_1/src/core/settings
-I/usr/ports/graphics/qgis/work/QGIS-final-3_22_1/src/core/symbology
-I/usr/ports/graphics/qgis/work/QGIS-final-3_22_1/src/core/textrenderer
-I/usr/ports/graphics/qgis/work/QGIS-final-3_22_1/src/core/validity
-I/usr/ports/graphics/qgis/work/QGIS-final-3_22_1/src/core/vector
-I/usr/ports/graphics/qgis/work/QGIS-final-3_22_1/src/core/vectortile
-I/usr/ports/graphics/qgis/work/QGIS-final-3_22_1/external
-I/usr/ports/graphics/qgis/work/QGIS-final-3_22_1/external/nlohmann
-I/usr/ports/graphics/qgis/work/QGIS-final-3_22_1/external/kdbush/include
-I/usr/ports/graphics/qgis/work/QGIS-final-3_22_1/external/nmea
-I/usr/ports/graphics/qgis/work/QGIS-final-3_22_1/external/rtree/include
-I/usr/ports/graphics/qgis/work/QGIS-final-3_22_1/external/meshOptimizer
-isystem /usr/local/include -isystem /usr/local/include/lazperf -isystem
/usr/local/include/qt5 -isystem /usr/local/include/qt5/QtCore -isystem
/usr/local/lib/qt5/mkspecs/freebsd-clang -isystem /usr/local/include/qt5/Qt=
Gui
-isystem /usr/local/include/qt5/QtXml -isystem /usr/local/include/qt5/QtWid=
gets
-isystem /usr/local/include/qt5/QtSvg -isystem
/usr/local/include/qt5/QtPrintSupport -isystem /usr/local/include/qt5/QtNet=
work
-isystem /usr/local/include/qt5/QtSql -isystem
/usr/local/include/qt5/QtConcurrent -isystem
/usr/local/include/Qca-qt5/QtCrypto -isystem /usr/local/include/qt5keychain
-isystem /usr/local/include/qt5/QtSerialPort -isystem
/usr/local/include/qt5/QtWebKitWidgets -isystem /usr/local/include/qt5/QtWe=
bKit
-isystem /usr/local/include/qt5/QtPositioning -O2 -pipe
-fstack-protector-strong -fno-strict-aliasing -Wall -Wextra -Wno-long-long
-Wformat-security -Wno-strict-aliasing -Wnon-virtual-dtor -Wno-redundant-mo=
ve
-Wreturn-type-c-linkage -Woverloaded-virtual -Wimplicit-fallthrough
-Qunused-arguments -O2 -pipe -fstack-protector-strong -fno-strict-aliasing
-fPIC -fvisibility=3Dhidden -fPIC -std=3Dgnu++17 -MD -MT
src/core/CMakeFiles/qgis_core.dir/providers/ogr/qgsogrproviderutils.cpp.o -=
MF
CMakeFiles/qgis_core.dir/providers/ogr/qgsogrproviderutils.cpp.o.d -o
CMakeFiles/qgis_core.dir/providers/ogr/qgsogrproviderutils.cpp.o -c
/usr/ports/graphics/qgis/work/QGIS-final-3_22_1/src/core/providers/ogr/qgso=
grproviderutils.cpp
/usr/ports/graphics/qgis/work/QGIS-final-3_22_1/src/core/providers/ogr/qgso=
grproviderutils.cpp:2595:34:
error: no matching constructor for initialization of 'QgsOgrDatasetSharedPt=
r'
(aka 'shared_ptr<QgsOgrDataset>')
  QgsOgrDatasetSharedPtr dsRet =3D QgsOgrDatasetSharedPtr( new QgsOgrDatase=
t(),
QgsOgrProviderUtils::releaseDataset );
                                 ^
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/v1/__memory/shared_ptr.h:469:26: note: candidate construct=
or
template not viable: no known conversion from 'QgsOgrDataset *' to
'std::nullptr_t' (aka 'nullptr_t') for 1st argument
    template <class _Dp> shared_ptr(nullptr_t __p, _Dp __d);
                         ^
/usr/include/c++/v1/__memory/shared_ptr.h:464:9: note: candidate template
ignored: requirement '__shared_ptr_deleter_ctor_reqs<void (*)(QgsOgrDataset
*&), QgsOgrDataset, QgsOgrDataset>::value' was not satisfied [with _Yp =3D
QgsOgrDataset, _Dp =3D void (*)(QgsOgrDataset *&)]
        shared_ptr(_Yp* __p, _Dp __d,
        ^
/usr/include/c++/v1/__memory/shared_ptr.h:471:51: note: candidate template
ignored: could not match 'shared_ptr<type-parameter-0-0>' against
'QgsOgrDataset *'
    template<class _Yp> _LIBCPP_INLINE_VISIBILITY shared_ptr(const
shared_ptr<_Yp>& __r, element_type* __p) _NOEXCEPT;
                                                  ^
/usr/include/c++/v1/__memory/shared_ptr.h:476:9: note: candidate template
ignored: could not match 'shared_ptr<type-parameter-0-0>' against
'QgsOgrDataset *'
        shared_ptr(const shared_ptr<_Yp>& __r,
        ^
/usr/include/c++/v1/__memory/shared_ptr.h:481:52: note: candidate template
ignored: could not match 'shared_ptr<type-parameter-0-0>' against
'QgsOgrDataset *'
    template<class _Yp> _LIBCPP_INLINE_VISIBILITY shared_ptr(shared_ptr<_Yp=
>&&
__r,
                                                   ^
/usr/include/c++/v1/__memory/shared_ptr.h:484:34: note: candidate template
ignored: could not match 'weak_ptr<type-parameter-0-0>' against 'QgsOgrData=
set
*'
    template<class _Yp> explicit shared_ptr(const weak_ptr<_Yp>& __r,
                                 ^
/usr/include/c++/v1/__memory/shared_ptr.h:488:9: note: candidate template
ignored: could not match 'auto_ptr<type-parameter-0-0>' against 'QgsOgrData=
set
*'
        shared_ptr(auto_ptr<_Yp>&& __r,
        ^
/usr/include/c++/v1/__memory/shared_ptr.h:492:9: note: candidate template
ignored: could not match 'unique_ptr<type-parameter-0-0, type-parameter-0-1=
>'
against 'QgsOgrDataset *'
        shared_ptr(unique_ptr<_Yp, _Dp>&&,
        ^
/usr/include/c++/v1/__memory/shared_ptr.h:500:9: note: candidate template
ignored: could not match 'unique_ptr<type-parameter-0-0, type-parameter-0-1=
>'
against 'QgsOgrDataset *'
        shared_ptr(unique_ptr<_Yp, _Dp>&&,
        ^
/usr/include/c++/v1/__memory/shared_ptr.h:441:23: note: candidate construct=
or
not viable: requires 1 argument, but 2 were provided
    _LIBCPP_CONSTEXPR shared_ptr(nullptr_t) _NOEXCEPT;
                      ^
/usr/include/c++/v1/__memory/shared_ptr.h:454:14: note: candidate construct=
or
template not viable: requires single argument '__p', but 2 arguments were
provided
    explicit shared_ptr(_Yp* __p) : __ptr_(__p) {
             ^
/usr/include/c++/v1/__memory/shared_ptr.h:473:5: note: candidate constructor
not viable: requires single argument '__r', but 2 arguments were provided
    shared_ptr(const shared_ptr& __r) _NOEXCEPT;
    ^
/usr/include/c++/v1/__memory/shared_ptr.h:480:5: note: candidate constructor
not viable: requires single argument '__r', but 2 arguments were provided
    shared_ptr(shared_ptr&& __r) _NOEXCEPT;
    ^
/usr/include/c++/v1/__memory/shared_ptr.h:470:40: note: candidate construct=
or
template not viable: requires 3 arguments, but 2 were provided
    template <class _Dp, class _Alloc> shared_ptr(nullptr_t __p, _Dp __d,
_Alloc __a);
                                       ^
/usr/include/c++/v1/__memory/shared_ptr.h:439:23: note: candidate construct=
or
not viable: requires 0 arguments, but 2 were provided
    _LIBCPP_CONSTEXPR shared_ptr() _NOEXCEPT;
                      ^
/usr/include/c++/v1/__memory/shared_ptr.h:467:9: note: candidate constructor
template not viable: requires at least 3 arguments, but 2 were provided
        shared_ptr(_Yp* __p, _Dp __d, _Alloc __a,
        ^
1 error generated.
gmake[4]: *** [src/core/CMakeFiles/qgis_core.dir/build.make:4635:
src/core/CMakeFiles/qgis_core.dir/providers/ogr/qgsogrproviderutils.cpp.o]
Error 1
gmake[4]: Leaving directory '/usr/ports/graphics/qgis/work/.build'
--------------------------------------


Trial and error showed that graphics/qgis builds correctly under CURRENT un=
til
commit b61bce17f346d79cecfd8f195a64b10f77be43b1 [1]. The above error message
occurs immediately after replacing llvm12 with llvm13 in commit
397a8ba05313cc3815d219c9d1b2de1372fcb561 [2].

[1]
https://freshbsd.org/freebsd/src/commit/b61bce17f346d79cecfd8f195a64b10f77b=
e43b1
[2]
https://freshbsd.org/freebsd/src/commit/397a8ba05313cc3815d219c9d1b2de1372f=
cb561


As far as I can say it does not help to use ports llvm instead. I tried alr=
eady
for llvm versions 9 to 13 via

    BUILD_DEPENDS+=3D  clang${LLVM_VER}:devel/llvm${LLVM_VER}
    LLVM_VER=3D        13
    CPP=3D             clang-cpp${LLVM_VER}
    CC=3D              clang${LLVM_VER}
    CXX=3D             clang++${LLVM_VER}


I had already asked on developers@ about this problem and dim@ expressed the
assumption that it "is likely some problem with the constructor it's trying=
 to
invoke here, i.e. some missing or incompatible argument" (thanks, Dimitry).

--=20
You are receiving this mail because:
You are the assignee for the bug.=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-259967-7788>