Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 925561 - dev-qt/qtmultimedia-6.7.9999: fails to compile (MUSL-CLANG19): implicit instantiation of undefined template 'std::char_traits<unsigned char>'
Summary: dev-qt/qtmultimedia-6.7.9999: fails to compile (MUSL-CLANG19): implicit insta...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: Qt Bug Alias
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2024-02-26 22:44 UTC by hugegameartgd
Modified: 2024-03-01 00:49 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
emerge.info (emerge.info,19.50 KB, text/plain)
2024-02-26 22:44 UTC, hugegameartgd
Details
build.log (build.log.gz,8.13 KB, application/gzip)
2024-02-26 22:44 UTC, hugegameartgd
Details

Note You need to log in before you can comment on or make changes to this bug.
Description hugegameartgd 2024-02-26 22:44:00 UTC
Created attachment 886047 [details]
emerge.info

dev-qt/qtmultimedia-6.7.9999 fails to compile with libc++-19 (musl/clang/merged-usr)

Steps to Reproduce:
- Compile with `emerge =dev-qt/qtmultimedia-6.7.9999::gentoo`

[105/369] /usr/lib/ccache/bin/clang++ -DGLIB_VERSION_MIN_REQUIRED=GLIB_VERSION_2_26 -DQGstreamerMediaPlugin_EXPORTS -DQT_CORE_LIB -DQT_DEPRECATED_WARNINGS -DQT_DISABLE_DEPRECATED_UP_TO=0x050000 -DQT_EXPLICIT_QFILE_CONSTRUCTION_FROM_PATH -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_NETWORK_LIB -DQT_NO_AS_CONST -DQT_NO_AS_CONST=1 -DQT_NO_CONTEXTLESS_CONNECT=1 -DQT_NO_DEBUG -DQT_NO_EXCEPTIONS -DQT_NO_FOREACH -DQT_NO_FOREACH=1 -DQT_NO_JAVA_STYLE_ITERATORS -DQT_NO_NARROWING_CONVERSIONS_IN_CONNECT -DQT_NO_QEXCHANGE -DQT_PLUGIN -DQT_USE_QSTRINGBUILDER -DQT_WARN_DEPRECATED_UP_TO=0x070000 -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -I/var/tmp/portage/dev-qt/qtmultimedia-6.7.9999/work/qtmultimedia-6.7.9999_build/src/plugins/multimedia/gstreamer/QGstreamerMediaPlugin_autogen/include -I/var/tmp/portage/dev-qt/qtmultimedia-6.7.9999/work/qtmultimedia-6.7.9999/src/plugins/multimedia/gstreamer -I/var/tmp/portage/dev-qt/qtmultimedia-6.7.9999/work/qtmultimedia-6.7.9999_build/src/plugins/multimedia/gstreamer -I/var/tmp/portage/dev-qt/qtmultimedia-6.7.9999/work/qtmultimedia-6.7.9999_build/include -I/var/tmp/portage/dev-qt/qtmultimedia-6.7.9999/work/qtmultimedia-6.7.9999/src/plugins/multimedia/gstreamer/audio -I/var/tmp/portage/dev-qt/qtmultimedia-6.7.9999/work/qtmultimedia-6.7.9999/src/plugins/multimedia/gstreamer/common -I/var/tmp/portage/dev-qt/qtmultimedia-6.7.9999/work/qtmultimedia-6.7.9999/src/plugins/multimedia/gstreamer/mediacapture -I/var/tmp/portage/dev-qt/qtmultimedia-6.7.9999/work/qtmultimedia-6.7.9999_build/src/multimedia -I/var/tmp/portage/dev-qt/qtmultimedia-6.7.9999/work/qtmultimedia-6.7.9999_build/include/QtMultimedia/6.7.0 -I/var/tmp/portage/dev-qt/qtmultimedia-6.7.9999/work/qtmultimedia-6.7.9999_build/include/QtMultimedia/6.7.0/QtMultimedia -I/var/tmp/portage/dev-qt/qtmultimedia-6.7.9999/work/qtmultimedia-6.7.9999_build/include/QtMultimedia -isystem /usr/include/qt6/QtCore/6.7.0 -isystem /usr/include/qt6/QtCore/6.7.0/QtCore -isystem /usr/include/qt6/QtCore -isystem /usr/include/qt6 -isystem /usr/lib/qt6/mkspecs/linux-clang -isystem /usr/include/qt6/QtGui/6.7.0 -isystem /usr/include/qt6/QtGui/6.7.0/QtGui -isystem /usr/include/qt6/QtGui -isystem /usr/include/qt6/QtNetwork -isystem /usr/include/gstreamer-1.0 -isystem /usr/include/glib-2.0 -isystem /usr/lib/glib-2.0/include -isystem /usr/lib/libffi/include -isystem /usr/include/orc-0.4 -isystem /usr/lib/gstreamer-1.0/include  -O3 -pipe -march=native -mtune=native -D_FORTIFY_SOURCE=3 -g0 -stdlib=libc++ -std=c++17 -fPIC -fvisibility=hidden -fvisibility-inlines-hidden -Wall -Wextra -fno-exceptions -fPIC -pthread -MD -MT src/plugins/multimedia/gstreamer/CMakeFiles/QGstreamerMediaPlugin.dir/common/qgstvideobuffer.cpp.o -MF src/plugins/multimedia/gstreamer/CMakeFiles/QGstreamerMediaPlugin.dir/common/qgstvideobuffer.cpp.o.d -o src/plugins/multimedia/gstreamer/CMakeFiles/QGstreamerMediaPlugin.dir/common/qgstvideobuffer.cpp.o -c /var/tmp/portage/dev-qt/qtmultimedia-6.7.9999/work/qtmultimedia-6.7.9999/src/plugins/multimedia/gstreamer/common/qgstvideobuffer.cpp
samu: job failed with status 1: /usr/lib/ccache/bin/clang++ -DGLIB_VERSION_MIN_REQUIRED=GLIB_VERSION_2_26 -DQGstreamerMediaPlugin_EXPORTS -DQT_CORE_LIB -DQT_DEPRECATED_WARNINGS -DQT_DISABLE_DEPRECATED_UP_TO=0x050000 -DQT_EXPLICIT_QFILE_CONSTRUCTION_FROM_PATH -DQT_GUI_LIB -DQT_MULTIMEDIA_LIB -DQT_NETWORK_LIB -DQT_NO_AS_CONST -DQT_NO_AS_CONST=1 -DQT_NO_CONTEXTLESS_CONNECT=1 -DQT_NO_DEBUG -DQT_NO_EXCEPTIONS -DQT_NO_FOREACH -DQT_NO_FOREACH=1 -DQT_NO_JAVA_STYLE_ITERATORS -DQT_NO_NARROWING_CONVERSIONS_IN_CONNECT -DQT_NO_QEXCHANGE -DQT_PLUGIN -DQT_USE_QSTRINGBUILDER -DQT_WARN_DEPRECATED_UP_TO=0x070000 -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -I/var/tmp/portage/dev-qt/qtmultimedia-6.7.9999/work/qtmultimedia-6.7.9999_build/src/plugins/multimedia/gstreamer/QGstreamerMediaPlugin_autogen/include -I/var/tmp/portage/dev-qt/qtmultimedia-6.7.9999/work/qtmultimedia-6.7.9999/src/plugins/multimedia/gstreamer -I/var/tmp/portage/dev-qt/qtmultimedia-6.7.9999/work/qtmultimedia-6.7.9999_build/src/plugins/multimedia/gstreamer -I/var/tmp/portage/dev-qt/qtmultimedia-6.7.9999/work/qtmultimedia-6.7.9999_build/include -I/var/tmp/portage/dev-qt/qtmultimedia-6.7.9999/work/qtmultimedia-6.7.9999/src/plugins/multimedia/gstreamer/audio -I/var/tmp/portage/dev-qt/qtmultimedia-6.7.9999/work/qtmultimedia-6.7.9999/src/plugins/multimedia/gstreamer/common -I/var/tmp/portage/dev-qt/qtmultimedia-6.7.9999/work/qtmultimedia-6.7.9999/src/plugins/multimedia/gstreamer/mediacapture -I/var/tmp/portage/dev-qt/qtmultimedia-6.7.9999/work/qtmultimedia-6.7.9999_build/src/multimedia -I/var/tmp/portage/dev-qt/qtmultimedia-6.7.9999/work/qtmultimedia-6.7.9999_build/include/QtMultimedia/6.7.0 -I/var/tmp/portage/dev-qt/qtmultimedia-6.7.9999/work/qtmultimedia-6.7.9999_build/include/QtMultimedia/6.7.0/QtMultimedia -I/var/tmp/portage/dev-qt/qtmultimedia-6.7.9999/work/qtmultimedia-6.7.9999_build/include/QtMultimedia -isystem /usr/include/qt6/QtCore/6.7.0 -isystem /usr/include/qt6/QtCore/6.7.0/QtCore -isystem /usr/include/qt6/QtCore -isystem /usr/include/qt6 -isystem /usr/lib/qt6/mkspecs/linux-clang -isystem /usr/include/qt6/QtGui/6.7.0 -isystem /usr/include/qt6/QtGui/6.7.0/QtGui -isystem /usr/include/qt6/QtGui -isystem /usr/include/qt6/QtNetwork -isystem /usr/include/gstreamer-1.0 -isystem /usr/include/glib-2.0 -isystem /usr/lib/glib-2.0/include -isystem /usr/lib/libffi/include -isystem /usr/include/orc-0.4 -isystem /usr/lib/gstreamer-1.0/include  -O3 -pipe -march=native -mtune=native -D_FORTIFY_SOURCE=3 -g0 -stdlib=libc++ -std=c++17 -fPIC -fvisibility=hidden -fvisibility-inlines-hidden -Wall -Wextra -fno-exceptions -fPIC -pthread -MD -MT src/plugins/multimedia/gstreamer/CMakeFiles/QGstreamerMediaPlugin.dir/common/qgstsubtitlesink.cpp.o -MF src/plugins/multimedia/gstreamer/CMakeFiles/QGstreamerMediaPlugin.dir/common/qgstsubtitlesink.cpp.o.d -o src/plugins/multimedia/gstreamer/CMakeFiles/QGstreamerMediaPlugin.dir/common/qgstsubtitlesink.cpp.o -c /var/tmp/portage/dev-qt/qtmultimedia-6.7.9999/work/qtmultimedia-6.7.9999/src/plugins/multimedia/gstreamer/common/qgstsubtitlesink.cpp
In file included from /var/tmp/portage/dev-qt/qtmultimedia-6.7.9999/work/qtmultimedia-6.7.9999/src/plugins/multimedia/gstreamer/common/qgstsubtitlesink.cpp:4:
In file included from /usr/include/qt6/QtCore/QDebug:1:
In file included from /usr/include/qt6/QtCore/qdebug.h:13:
In file included from /usr/include/qt6/QtCore/qtextstream.h:8:
In file included from /usr/include/qt6/QtCore/qchar.h:656:
In file included from /usr/include/qt6/QtCore/qstringview.h:8:
In file included from /usr/include/qt6/QtCore/qbytearray.h:14:
/usr/include/qt6/QtCore/qbytearrayview.h:70:27: error: implicit instantiation of undefined template 'std::char_traits<unsigned char>'
   70 |     return qsizetype(std::char_traits<Char>::length(data));
      |                           ^
/usr/include/qt6/QtCore/qbytearrayview.h:152:39: note: in instantiation of function template specialization 'QtPrivate::lengthHelperPointer<unsigned char>' requested here
  152 |               data, data ? QtPrivate::lengthHelperPointer(data) : 0) {}
      |                                       ^
/var/tmp/portage/dev-qt/qtmultimedia-6.7.9999/work/qtmultimedia-6.7.9999/src/plugins/multimedia/gstreamer/common/qgstsubtitlesink.cpp:148:38: note: in instantiation of function template specialization 'QByteArrayView::QByteArrayView<unsigned char *, true>' requested here
  148 |         subtitle = QString::fromUtf8(info.data);
      |                                      ^
/usr/include/c++/v1/__string/char_traits.h:43:8: note: template is declared here
   43 | struct char_traits;
      |        ^
1 error generated.
samu: subcommand failed
Comment 1 hugegameartgd 2024-02-26 22:44:16 UTC
Created attachment 886048 [details]
build.log
Comment 2 Ionen Wolkens gentoo-dev 2024-02-27 00:17:00 UTC
Doesn't hurt to know, but unless clang19 release is close (i.e. -rc stage), and upstream Qt still hasn't fixed it then I'm not going to do anything about this downstream.

Overall I'm currently more interested in issues with close-to-release clang18 than getting bugs about the far away clang19.

May end up forgetting about this though, so feel free to ping if this becomes more urgent.
Comment 3 Ionen Wolkens gentoo-dev 2024-02-27 00:17:54 UTC
(In reply to Ionen Wolkens from comment #2)
> Overall I'm currently more interested in issues with close-to-release
> clang18 than getting bugs about the far away clang19.
(by that I meant the whole stack, including libc++)
Comment 4 Ionen Wolkens gentoo-dev 2024-03-01 00:49:04 UTC
Well, looks like upstream fixed this for live ebuilds.

Given bug was filed against 6.7.9999 I'll go ahead and close this, will be fixied in 6.6.3 and 6.7.0 which will both come long before libc++19 releases.