[QGIS-Developer] building master in pkgsrc; mostly ok!
Greg Troxel
gdt at lexort.com
Wed Feb 18 15:04:55 PST 2026
I'm building qgis masterunder NetBSD 10, both not under pkgsrc and now
as a 3.99.0 package, tracking git master.
I am using gcc 12 which I believe should be ok with c++20. qgis's cmake
accepts it.
The exciting news is that things are mostly good.
Three test files fail to build with an ambiguous overload, and I'm
pretty sure there is one root cause for 3 problems. I'm including the
build output from just the first.
Trying to understand, it seems like a complex inheritance pattern and
there are at least two ways to do it. I think the compiler is saying
there is no valid way to break the tie.
(This is after running make to build what builds, which is almost
everything else.)
Is anyon else seeing this? Using gcc12?
=> Bootstrap dependency digest>=20211023: found digest-20220214
===> Checking for vulnerabilities in qgis-3.99.0
===> Building for qgis-3.99.0
[1/22] Running crssync
Detected locale "C" with character encoding "646", which is not UTF-8.
Qt depends on a UTF-8 locale, and has switched to "C.UTF-8" instead.
If this causes problems, reconfigure your locale. See the locale(1) manual
for more information.
[2/22] Building CXX object tests/src/core/geometry/CMakeFiles/test_core_geometry_linestring.dir/testqgslinestring.cpp.o
FAILED: [code=1] tests/src/core/geometry/CMakeFiles/test_core_geometry_linestring.dir/testqgslinestring.cpp.o
/tmp/work/wip/qgis/work/.cwrapper/bin/c++ -DCMAKE_SOURCE_DIR=\"/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759\" -DINSTALL_PREFIX=\"/usr/pkg\" -DPROTOBUF_USE_DLLS -DQT_CONCURRENT_LIB -DQT_CORE5COMPAT_LIB -DQT_CORE_LIB -DQT_DBUS_LIB -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_NETWORK_LIB -DQT_NO_CAST_TO_ASCII -DQT_NO_DEBUG -DQT_NO_DEPRECATED_WARNINGS -DQT_POSITIONING_LIB -DQT_PRINTSUPPORT_LIB -DQT_SERIALPORT_LIB -DQT_SQL_LIB -DQT_SVG_LIB -DQT_TESTCASE_BUILDDIR=\"/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/cmake-pkgsrc-build/tests/src/core/geometry\" -DQT_TESTCASE_SOURCEDIR=\"/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/tests/src/core/geometry\" -DQT_TESTLIB_LIB -DQT_USE_QSTRINGBUILDER -DQT_WIDGETS_LIB -DQT_XML_LIB -DSIP_VERSION=0x060e00 -DTEST_DATA_DIR=\"/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/tests/testdata\" -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/cmake-pkgsrc-build/tests/src/core/geometry/test_core_geometry_linestring_autogen/include -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/cmake-pkgsrc-build -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/tests/src/core -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/cmake-pkgsrc-build/tests/src/core -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/external/kdbush/include -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/test -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/external/lazperf -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/tests/src/core/geometry -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/cmake-pkgsrc-build/tests/src/core/geometry -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/cmake-pkgsrc-build/src/core -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/3d -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/actions -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/annotations -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/auth -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/browser -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/callouts -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/classification -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/diagram -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/dxf -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/editform -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/effects -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/elevation -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/expression -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/externalstorage -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/fieldformatter -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/geometry -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/geocoding -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/gps -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/labeling -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/labeling/rules -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/layertree -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/layout -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/locator -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/maprenderer -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/mesh -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/metadata -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/multimedia -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/network -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/numericformats -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/painting -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/pal -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/pdf -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/plot -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/pointcloud -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/pointcloud/expression -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/processing -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/processing/models -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/proj -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/project -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/providers -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/providers/arcgis -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/providers/memory -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/providers/gdal -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/providers/ogr -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/providers/meshmemory -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/providers/sensorthings -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/raster -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/renderer -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/scalebar -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/settings -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/sensor -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/stac -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/symbology -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/textrenderer -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/tiledscene -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/validity -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/vector -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/vectortile -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/web -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/external/delaunator-cpp -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/external/nanoarrow/include -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/external/nmea -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/external/rtree/include -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/external/tinygltf -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/external/earcut -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/providers/ept -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/providers/copc -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/providers/vpc -I/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/cmake-pkgsrc-build/src/test -isystem /tmp/work/wip/qgis/work/.buildlink/include -isystem /usr/pkg/qt6/include/Qca-qt6/QtCrypto -isystem /tmp/work/wip/qgis/work/.buildlink/qt6/include/QtCore -isystem /tmp/work/wip/qgis/work/.buildlink/qt6/include -isystem /tmp/work/wip/qgis/work/.buildlink/qt6/mkspecs/netbsd-g++ -isystem /tmp/work/wip/qgis/work/.buildlink/qt6/include/QtGui -isystem /tmp/work/wip/qgis/work/.buildlink/qt6/include/QtXml -isystem /tmp/work/wip/qgis/work/.buildlink/qt6/include/QtWidgets -isystem /tmp/work/wip/qgis/work/.buildlink/qt6/include/QtSvg -isystem /tmp/work/wip/qgis/work/.buildlink/qt6/include/QtNetwork -isystem /tmp/work/wip/qgis/work/.buildlink/qt6/include/QtSql -isystem /tmp/work/wip/qgis/work/.buildlink/qt6/include/QtConcurrent -isystem /tmp/work/wip/qgis/work/.buildlink/qt6/include/QtMultimedia -isystem /tmp/work/wip/qgis/work/.buildlink/include/geos -isystem /tmp/work/wip/qgis/work/.buildlink/qt6/include/QtPositioning -isystem /tmp/work/wip/qgis/work/.buildlink/qt6/include/QtDBus -isystem /tmp/work/wip/qgis/work/.buildlink/qt6/include/QtPrintSupport -isystem /usr/pkg/include -isystem /tmp/work/wip/qgis/work/.buildlink/qt6/include/QtCore5Compat -isystem /tmp/work/wip/qgis/work/.buildlink/qt6/include/QtSerialPort -isystem /tmp/work/wip/qgis/work/.buildlink/qt6/include/QtTest -O2 -I/usr/pkg/include -I/usr/include -I/usr/pkg/include/python3.13 -Dz_off_t=long -I/usr/pkg/qt6/include -I/usr/pkg/include/glib-2.0 -I/usr/pkg/include/gio-unix-2.0 -I/usr/pkg/lib/glib-2.0/include -I/usr/pkg/include/harfbuzz -I/usr/pkg/include/freetype2 -I/usr/X11R7/include -I/usr/X11R7/include/libdrm -I/usr/pkg/include/libxml2 -I/usr/pkg/include/minizip -I/usr/pkg/include/gstreamer-1.0 -Wall -Wextra -Wno-long-long -Wformat-security -Wno-strict-aliasing -Wnon-virtual-dtor -Wno-redundant-move -Wno-misleading-indentation -Wno-deprecated-copy -Woverloaded-virtual -Wimplicit-fallthrough -Wsuggest-override -std=gnu++20 -fvisibility=hidden -fPIC -MD -MT tests/src/core/geometry/CMakeFiles/test_core_geometry_linestring.dir/testqgslinestring.cpp.o -MF tests/src/core/geometry/CMakeFiles/test_core_geometry_linestring.dir/testqgslinestring.cpp.o.d -o tests/src/core/geometry/CMakeFiles/test_core_geometry_linestring.dir/testqgslinestring.cpp.o -c /tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/tests/src/core/geometry/testqgslinestring.cpp
In file included from /usr/pkg/qt6/include/QtTest/qtest.h:13,
from /usr/pkg/qt6/include/QtTest/QTest:1,
from /tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/test/qgstest.h:50,
from /tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/tests/src/core/geometry/testqgslinestring.cpp:31:
/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/tests/src/core/geometry/testqgslinestring.cpp: In member function 'void TestQgsLineString::equality()':
/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/tests/src/core/geometry/testqgslinestring.cpp:956:19: error: ambiguous overload for 'operator==' (operand types are 'QgsLineString' and 'QgsPoint')
956 | QVERIFY( !( ls6 == p1 ) );
| ~~~ ^~ ~~
| | |
| | QgsPoint
| QgsLineString
In file included from /tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/geometry/qgsbox3d.h:22,
from /tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/geometry/qgscurve.h:24,
from /tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/geometry/qgscircularstring.h:23,
from /tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/tests/src/core/geometry/testqgslinestring.cpp:22:
/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/geometry/qgspoint.h:280:10: note: candidate: 'virtual bool QgsPoint::operator==(const QgsAbstractGeometry&) const' (reversed)
280 | bool operator==( const QgsAbstractGeometry &other ) const override SIP_HOLDGIL
| ^~~~~~~~
/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/geometry/qgscurve.h:46:10: note: candidate: 'virtual bool QgsCurve::operator==(const QgsAbstractGeometry&) const'
46 | bool operator==( const QgsAbstractGeometry &other ) const override;
| ^~~~~~~~
/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/tests/src/core/geometry/testqgslinestring.cpp:957:16: error: ambiguous overload for 'operator!=' (operand types are 'QgsLineString' and 'QgsPoint')
957 | QVERIFY( ls6 != p1 );
| ~~~ ^~ ~~
| | |
| | QgsPoint
| QgsLineString
/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/geometry/qgspoint.h:280:10: note: candidate: 'virtual bool QgsPoint::operator==(const QgsAbstractGeometry&) const' (reversed)
280 | bool operator==( const QgsAbstractGeometry &other ) const override SIP_HOLDGIL
| ^~~~~~~~
/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/geometry/qgscurve.h:46:10: note: candidate: 'virtual bool QgsCurve::operator==(const QgsAbstractGeometry&) const' (rewritten)
46 | bool operator==( const QgsAbstractGeometry &other ) const override;
| ^~~~~~~~
/tmp/work/wip/qgis/work/QGIS-a6644ddc2e269e32f6e622f327e5c000774d4759/src/core/geometry/qgscurve.h:47:10: note: candidate: 'virtual bool QgsCurve::operator!=(const QgsAbstractGeometry&) const'
47 | bool operator!=( const QgsAbstractGeometry &other ) const override;
| ^~~~~~~~
ninja: build stopped: subcommand failed.
*** Please use pkgtools/verifypc to sanity check dependencies.
*** Error code 1 (continuing)
`all' not remade because of errors.
Stop.
make[1]: stopped in /n0/gdt/pkgsrc-current/pkgsrc/wip/qgis
*** Error code 1 (continuing)
`all' not remade because of errors.
Stop.
make: stopped in /usr/pkgsrc/wip/qgis
More information about the QGIS-Developer
mailing list