[Bug 1158510] New: GCC 10: libqt5-qtlocation build fails
http://bugzilla.opensuse.org/show_bug.cgi?id=1158510
Bug ID: 1158510
Summary: GCC 10: libqt5-qtlocation build fails
Classification: openSUSE
Product: openSUSE Tumbleweed
Version: Current
Hardware: Other
OS: Other
Status: NEW
Severity: Normal
Priority: P5 - None
Component: Basesystem
Assignee: bnc-team-screening@forge.provo.novell.com
Reporter: martin.liska@suse.com
QA Contact: qa-bugs@suse.de
Found By: ---
Blocker: ---
Fails due to:
[ 444s] platform/default/bidi.cpp: In member function 'void
mbgl::BiDi::mergeParagraphLineBreaks(std::set<long unsigned int>&)':
[ 444s] platform/default/bidi.cpp:63:24: error: 'runtime_error' is not a
member of 'std'
[ 444s] 63 | throw
std::runtime_error(std::string("ProcessedBiDiText::mergeParagraphLineBreaks: ")
+
[ 444s] | ^~~~~~~~~~~~~
[ 445s] platform/default/bidi.cpp: In member function
'std::vector
http://bugzilla.opensuse.org/show_bug.cgi?id=1158510
Martin Liška
http://bugzilla.opensuse.org/show_bug.cgi?id=1158510
http://bugzilla.opensuse.org/show_bug.cgi?id=1158510#c1
--- Comment #1 from Christophe Giboudeaux
There's a missing header include.
Nope, after adding the missing includes (stdint.h in src/3rdparty/mapbox-gl-native/include/mbgl/util/convert.hpp and stdexcept in src/3rdparty/mapbox-gl-native/platform/default/bidi.cpp), there's a linker error. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1158510
http://bugzilla.opensuse.org/show_bug.cgi?id=1158510#c2
--- Comment #2 from Christophe Giboudeaux
http://bugzilla.opensuse.org/show_bug.cgi?id=1158510
Christophe Giboudeaux
http://bugzilla.opensuse.org/show_bug.cgi?id=1158510
http://bugzilla.opensuse.org/show_bug.cgi?id=1158510#c3
Martin Liška
(In reply to Martin Liška from comment #0)
There's a missing header include.
Nope, after adding the missing includes (stdint.h in src/3rdparty/mapbox-gl-native/include/mbgl/util/convert.hpp and stdexcept in src/3rdparty/mapbox-gl-native/platform/default/bidi.cpp), there's a linker error.
Thank you for working on that. This one is a different issue probably caused by LTO. Let me take a look. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1158510
http://bugzilla.opensuse.org/show_bug.cgi?id=1158510#c4
--- Comment #4 from Martin Liška
(In reply to Christophe Giboudeaux from comment #1)
(In reply to Martin Liška from comment #0)
There's a missing header include.
Nope, after adding the missing includes (stdint.h in src/3rdparty/mapbox-gl-native/include/mbgl/util/convert.hpp and stdexcept in src/3rdparty/mapbox-gl-native/platform/default/bidi.cpp), there's a linker error.
Thank you for working on that. This one is a different issue probably caused by LTO. Let me take a look.
I can be possibly caused by: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93115 -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1158510
http://bugzilla.opensuse.org/show_bug.cgi?id=1158510#c13
--- Comment #13 from Martin Liška
All right, I isolated that and reported to upstream: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94124
The issue is fixed in devel:gcc/gcc10 package (also present in openSUSE:Factory:Staging:Gcc7 staging project). @Christophe: Can you please test the build now? -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1158510
http://bugzilla.opensuse.org/show_bug.cgi?id=1158510#c14
--- Comment #14 from Christophe Giboudeaux
(In reply to Martin Liška from comment #12)
All right, I isolated that and reported to upstream: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94124
The issue is fixed in devel:gcc/gcc10 package (also present in openSUSE:Factory:Staging:Gcc7 staging project). @Christophe: Can you please test the build now?
It fails elsewhere with ffat-lto-objects and gcc10 from the devel prj: [ 444s] g++ -Wl,--as-needed -Wl,--no-undefined -Wl,--no-undefined -Wl,--enable-new-dtags -shared -o libqtgeoservices_mapboxgl.so .obj/qgeoserviceproviderpluginmapboxgl.o .obj/qgeomappingmanagerenginemapboxgl.o .obj/qgeomapmapboxgl.o .obj/qmapboxglstylechange.o .obj/qsgmapboxglnode.o .obj/qrc_mapboxgl.o .obj/moc_qgeoserviceproviderpluginmapboxgl.o .obj/moc_qgeomappingmanagerenginemapboxgl.o .obj/moc_qgeomapmapboxgl.o -L/usr/lib64 /home/abuild/rpmbuild/BUILD/qtlocation-everywhere-src-5.15.0-beta1/lib/libQt5Location.so /home/abuild/rpmbuild/BUILD/qtlocation-everywhere-src-5.15.0-beta1/lib/libQt5PositioningQuick.so /home/abuild/rpmbuild/BUILD/qtlocation-everywhere-src-5.15.0-beta1/lib/libQt5Positioning.so /usr/lib64/libQt5Quick.so /usr/lib64/libQt5Gui.so /usr/lib64/libQt5QmlModels.so /usr/lib64/libQt5Qml.so /usr/lib64/libQt5Network.so /usr/lib64/libQt5Sql.so /usr/lib64/libQt5Core.so -lGL -lpthread -L/home/abuild/rpmbuild/BUILD/qtlocation-everywhere-src-5.15.0-beta1/lib -lqmapboxgl -L/usr/lib64 /usr/lib64/libQt5Network.so /usr/lib64/libQt5Gui.so /usr/lib64/libQt5Sql.so /usr/lib64/libQt5Core.so -lGL -lpthread -lssl -lcrypto -lz -licui18n -licuuc -licudata -ldl [ 672s] /usr/lib64/gcc/x86_64-suse-linux/10/../../../../x86_64-suse-linux/bin/ld: /tmp/libqtgeoservices_mapboxgl.so.LZZpHu.ltrans33.ltrans.o: in function `mbgl::VectorTile::~VectorTile()': [ 672s] /home/abuild/rpmbuild/BUILD/qtlocation-everywhere-src-5.15.0-beta1/src/plugins/geoservices/mapboxgl/src/mbgl/tile/vector_tile.hpp:11: undefined reference to `mbgl::TileLoadermbgl::VectorTile::~TileLoader()' [ 672s] /usr/lib64/gcc/x86_64-suse-linux/10/../../../../x86_64-suse-linux/bin/ld: /tmp/libqtgeoservices_mapboxgl.so.LZZpHu.ltrans33.ltrans.o: in function `mbgl::VectorTile::~VectorTile()': [ 672s] /home/abuild/rpmbuild/BUILD/qtlocation-everywhere-src-5.15.0-beta1/src/plugins/geoservices/mapboxgl/src/mbgl/tile/vector_tile.hpp:11: undefined reference to `mbgl::TileLoadermbgl::VectorTile::~TileLoader()' [ 672s] /usr/lib64/gcc/x86_64-suse-linux/10/../../../../x86_64-suse-linux/bin/ld: /tmp/libqtgeoservices_mapboxgl.so.LZZpHu.ltrans33.ltrans.o: in function `non-virtual thunk to mbgl::VectorTile::~VectorTile()': [ 672s] /home/abuild/rpmbuild/BUILD/qtlocation-everywhere-src-5.15.0-beta1/src/plugins/geoservices/mapboxgl/src/mbgl/tile/vector_tile.hpp:11: undefined reference to `mbgl::TileLoadermbgl::VectorTile::~TileLoader()' [ 672s] /usr/lib64/gcc/x86_64-suse-linux/10/../../../../x86_64-suse-linux/bin/ld: /tmp/libqtgeoservices_mapboxgl.so.LZZpHu.ltrans33.ltrans.o: in function `non-virtual thunk to mbgl::VectorTile::~VectorTile()': [ 672s] /home/abuild/rpmbuild/BUILD/qtlocation-everywhere-src-5.15.0-beta1/src/plugins/geoservices/mapboxgl/src/mbgl/tile/vector_tile.hpp:11: undefined reference to `mbgl::TileLoadermbgl::VectorTile::~TileLoader()' [ 672s] /usr/lib64/gcc/x86_64-suse-linux/10/../../../../x86_64-suse-linux/bin/ld: /tmp/libqtgeoservices_mapboxgl.so.LZZpHu.ltrans33.ltrans.o: in function `non-virtual thunk to mbgl::VectorTile::~VectorTile()': [ 672s] /home/abuild/rpmbuild/BUILD/qtlocation-everywhere-src-5.15.0-beta1/src/plugins/geoservices/mapboxgl/src/mbgl/tile/vector_tile.hpp:11: undefined reference to `mbgl::TileLoadermbgl::VectorTile::~TileLoader()' [ 672s] /usr/lib64/gcc/x86_64-suse-linux/10/../../../../x86_64-suse-linux/bin/ld: /tmp/libqtgeoservices_mapboxgl.so.LZZpHu.ltrans33.ltrans.o:/home/abuild/rpmbuild/BUILD/qtlocation-everywhere-src-5.15.0-beta1/src/plugins/geoservices/mapboxgl/src/mbgl/tile/vector_tile.hpp:11: more undefined references to `mbgl::TileLoadermbgl::VectorTile::~TileLoader()' follow [ 672s] /usr/lib64/gcc/x86_64-suse-linux/10/../../../../x86_64-suse-linux/bin/ld: /tmp/libqtgeoservices_mapboxgl.so.LZZpHu.ltrans33.ltrans.o: in function `mbgl::VectorTile::~VectorTile()': [ 672s] /home/abuild/rpmbuild/BUILD/qtlocation-everywhere-src-5.15.0-beta1/src/plugins/geoservices/mapboxgl/src/mbgl/tile/vector_tile.hpp:11: undefined reference to `mbgl::TileLoadermbgl::VectorTile::~TileLoader()' [ 672s] /usr/lib64/gcc/x86_64-suse-linux/10/../../../../x86_64-suse-linux/bin/ld: /tmp/libqtgeoservices_mapboxgl.so.LZZpHu.ltrans33.ltrans.o: in function `mbgl::VectorTile::~VectorTile()': [ 672s] /home/abuild/rpmbuild/BUILD/qtlocation-everywhere-src-5.15.0-beta1/src/plugins/geoservices/mapboxgl/src/mbgl/tile/vector_tile.hpp:11: undefined reference to `mbgl::TileLoadermbgl::VectorTile::~TileLoader()' [ 672s] /usr/lib64/gcc/x86_64-suse-linux/10/../../../../x86_64-suse-linux/bin/ld: /tmp/libqtgeoservices_mapboxgl.so.LZZpHu.ltrans33.ltrans.o: in function `non-virtual thunk to mbgl::VectorTile::~VectorTile()': [ 672s] /home/abuild/rpmbuild/BUILD/qtlocation-everywhere-src-5.15.0-beta1/src/plugins/geoservices/mapboxgl/src/mbgl/tile/vector_tile.hpp:11: undefined reference to `mbgl::TileLoadermbgl::VectorTile::~TileLoader()' [ 672s] /usr/lib64/gcc/x86_64-suse-linux/10/../../../../x86_64-suse-linux/bin/ld: /tmp/libqtgeoservices_mapboxgl.so.LZZpHu.ltrans33.ltrans.o: in function `non-virtual thunk to mbgl::VectorTile::~VectorTile()': [ 672s] /home/abuild/rpmbuild/BUILD/qtlocation-everywhere-src-5.15.0-beta1/src/plugins/geoservices/mapboxgl/src/mbgl/tile/vector_tile.hpp:11: undefined reference to `mbgl::TileLoadermbgl::VectorTile::~TileLoader()' [ 672s] /usr/lib64/gcc/x86_64-suse-linux/10/../../../../x86_64-suse-linux/bin/ld: /tmp/libqtgeoservices_mapboxgl.so.LZZpHu.ltrans33.ltrans.o: in function `non-virtual thunk to mbgl::VectorTile::~VectorTile()': [ 672s] /home/abuild/rpmbuild/BUILD/qtlocation-everywhere-src-5.15.0-beta1/src/plugins/geoservices/mapboxgl/src/mbgl/tile/vector_tile.hpp:11: undefined reference to `mbgl::TileLoadermbgl::VectorTile::~TileLoader()' [ 672s] /usr/lib64/gcc/x86_64-suse-linux/10/../../../../x86_64-suse-linux/bin/ld: /tmp/libqtgeoservices_mapboxgl.so.LZZpHu.ltrans33.ltrans.o:/home/abuild/rpmbuild/BUILD/qtlocation-everywhere-src-5.15.0-beta1/src/plugins/geoservices/mapboxgl/src/mbgl/tile/vector_tile.hpp:11: more undefined references to `mbgl::TileLoadermbgl::VectorTile::~TileLoader()' follow [ 673s] collect2: error: ld returned 1 exit status -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1158510
http://bugzilla.opensuse.org/show_bug.cgi?id=1158510#c15
--- Comment #15 from Martin Liška
http://bugzilla.opensuse.org/show_bug.cgi?id=1158510
http://bugzilla.opensuse.org/show_bug.cgi?id=1158510#c16
--- Comment #16 from Christophe Giboudeaux
http://bugzilla.opensuse.org/show_bug.cgi?id=1158510
http://bugzilla.opensuse.org/show_bug.cgi?id=1158510#c17
--- Comment #17 from Christophe Giboudeaux
http://bugzilla.opensuse.org/show_bug.cgi?id=1158510
http://bugzilla.opensuse.org/show_bug.cgi?id=1158510#c18
--- Comment #18 from Martin Liška
that's with a local osc build
I can reproduce that. It's a regression from gcc9, I'm reducing a test-case and I will create a GCC bug soon. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1158510
http://bugzilla.opensuse.org/show_bug.cgi?id=1158510#c19
--- Comment #19 from Martin Liška
http://bugzilla.opensuse.org/show_bug.cgi?id=1158510
http://bugzilla.opensuse.org/show_bug.cgi?id=1158510#c20
--- Comment #20 from Christophe Giboudeaux
http://bugzilla.opensuse.org/show_bug.cgi?id=1158510
http://bugzilla.opensuse.org/show_bug.cgi?id=1158510#c21
--- Comment #21 from Martin Liška
mmh, why don't we see this issue with gcc < 10 then?
https://build.opensuse.org/package/show/KDE:Qt:5.15/libqt5-qtlocation is green
It started with the following GCC revision: https://gcc.gnu.org/git/gitweb.cgi?p=gcc.git;h=0b92cf305dcf3438 Since the revision we inline more and that's why the destructor is inlined to all callers in vector_tile.o and so that the symbol is not defined. That's why we seen the error. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1158510
http://bugzilla.opensuse.org/show_bug.cgi?id=1158510#c22
--- Comment #22 from Martin Liška
http://bugzilla.opensuse.org/show_bug.cgi?id=1158510
http://bugzilla.opensuse.org/show_bug.cgi?id=1158510#c23
--- Comment #23 from Christophe Giboudeaux
http://bugzilla.opensuse.org/show_bug.cgi?id=1158510
Christophe Giboudeaux
http://bugzilla.opensuse.org/show_bug.cgi?id=1158510
http://bugzilla.opensuse.org/show_bug.cgi?id=1158510#c24
--- Comment #24 from Martin Liška
I'm still unsure how to fix the last issue to be honest.
Ok, I'll prepare a patch for it. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1158510
http://bugzilla.opensuse.org/show_bug.cgi?id=1158510#c25
--- Comment #25 from Martin Liška
(In reply to Christophe Giboudeaux from comment #23)
I'm still unsure how to fix the last issue to be honest.
Ok, I'll prepare a patch for it.
The following is needed and now I can build the package:
cat /tmp/p
diff --git
a/src/3rdparty/mapbox-gl-native/src/mbgl/renderer/sources/render_vector_source.cpp
b/src/3rdparty/mapbox-gl-native/src/mbgl/renderer/sources/render_vector_source.cpp
index 4de4f01..afb639d 100644
---
a/src/3rdparty/mapbox-gl-native/src/mbgl/renderer/sources/render_vector_source.cpp
+++
b/src/3rdparty/mapbox-gl-native/src/mbgl/renderer/sources/render_vector_source.cpp
@@ -2,6 +2,7 @@
#include
http://bugzilla.opensuse.org/show_bug.cgi?id=1158510
http://bugzilla.opensuse.org/show_bug.cgi?id=1158510#c26
--- Comment #26 from Christophe Giboudeaux
http://bugzilla.opensuse.org/show_bug.cgi?id=1158510
http://bugzilla.opensuse.org/show_bug.cgi?id=1158510#c27
--- Comment #27 from Christophe Giboudeaux
participants (1)
-
bugzilla_noreply@novell.com