Skip to content

Build error with qt6-base-6.10.0-2 on ARCH Linux #221

@ubergarm

Description

@ubergarm

I'm trying to compile easy_profiler for a project that depends on it. It built fine on older Ubuntu 22.04 libqt5 5.15.3 laptop, but on my ARCH Linux desktop it throws errors like easy_profiler/profiler_gui/common_functions.cpp:97:101: error: no matching function for call to ‘QChar::QChar(profiler::Value<profiler::DataType::Int8, true>::value_type)’

Here are the system details, build commands to reproduce, and the error logs:

👈 System Info
$ cat /etc/os-release
NAME="Arch Linux"
PRETTY_NAME="Arch Linux"
ID=arch
BUILD_ID=rolling
ANSI_COLOR="38;2;23;147;209"
HOME_URL="https://archlinux.org/"
DOCUMENTATION_URL="https://wiki.archlinux.org/"
SUPPORT_URL="https://bbs.archlinux.org/"
BUG_REPORT_URL="https://gitlab.archlinux.org/groups/archlinux/-/issues"
PRIVACY_POLICY_URL="https://terms.archlinux.org/docs/privacy-policy/"
LOGO=archlinux-logo

$ uname -a
Linux bigfan 6.15.4-arch2-1 #1 SMP PREEMPT_DYNAMIC Fri, 27 Jun 2025 16:35:07 +0000 x86_64 GNU/Linux

$ gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-pc-linux-gnu/15.1.1/lto-wrapper
Target: x86_64-pc-linux-gnu
Configured with: /build/gcc/src/gcc/configure --enable-languages=ada,c,c++,d,fortran,go,lto,m2,objc,obj-c++,rust,cobol --enable-bootstrap --prefix=/usr --libdir=/usr/lib --libexecdir=/usr/lib --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=https://gitlab.archlinux.org/archlinux/packaging/packages/gcc/-/issues --with-build-config=bootstrap-lto --with-linker-hash-style=gnu --with-system-zlib --enable-__cxa_atexit --enable-cet=auto --enable-checking=release --enable-clocale=gnu --enable-default-pie --enable-default-ssp --enable-gnu-indirect-function --enable-gnu-unique-object --enable-libstdcxx-backtrace --enable-link-serialization=1 --enable-linker-build-id --enable-lto --enable-multilib --enable-plugin --enable-shared --enable-threads=posix --disable-libssp --disable-libstdcxx-pch --disable-werror
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 15.1.1 20250425 (GCC)

$ yay -Ss qt | grep Installed
extra/qt6-multimedia-ffmpeg 6.10.0-2 (541.6 KiB 2.7 MiB) (Installed)
extra/qt5-remoteobjects 5.15.17-1 (359.5 KiB 1.2 MiB) [qt5] (Installed)
extra/qt5-translations 5.15.17-1 (1.9 MiB 14.7 MiB) [qt5] (Installed)
extra/qt6-translations 6.10.0-1 (1.9 MiB 14.7 MiB) [qt6] (Installed)
extra/qt6-imageformats 6.10.0-1 (67.3 KiB 353.9 KiB) [qt6] (Installed)
extra/qt6-declarative 6.10.0-2 (16.2 MiB 111.5 MiB) [qt6] (Installed)
extra/qt6-shadertools 6.10.0-1 (1.6 MiB 4.8 MiB) [qt6] (Installed)
extra/qt5-declarative 5.15.17+kde+r21-1 (4.8 MiB 23.2 MiB) [qt5] (Installed)
extra/qt5-webchannel 5.15.17+kde+r3-1 (74.1 KiB 228.7 KiB) [qt5] (Installed)
extra/qt6-multimedia 6.10.0-2 (1.3 MiB 6.3 MiB) [qt6] (Installed)
extra/qt5-webengine 5.15.19-3 (51.3 MiB 159.2 MiB) [qt5] (Installed)
extra/qt5-location 5.15.17+kde+r7-1 (2.5 MiB 9.3 MiB) [qt5] (Installed)
extra/qt6-5compat 6.10.0-1 (509.5 KiB 2.1 MiB) [qt6] (Installed)
extra/qt6-charts 6.10.0-1 (818.6 KiB 4.4 MiB) [qt6] (Installed)
extra/qt5-base 5.15.17+kde+r123-2 (13.1 MiB 63.2 MiB) [qt5] (Installed)
extra/qt6-base 6.10.0-2 (15.1 MiB 64.3 MiB) [qt6] (Installed)
extra/qt5-svg 5.15.17+kde+r5-1 (149.3 KiB 503.3 KiB) [qt5] (Installed)
extra/qt6-svg 6.10.0-1 (280.5 KiB 974.2 KiB) [qt6] (Installed)
👈 Build Log with Errors
$ git clone git@github.com:yse/easy_profiler.git
$ cd easy_profiler
$ git branch
* develop
$ git rev-parse --short HEAD
cc0e154
$ mkdir build && cd build

$ cmake -DCMAKE_BUILD_TYPE="Release" ..
-- The CXX compiler identification is GNU 15.1.1
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
--
-- EASY_PROFILER.Core version = 2.1.0
--
-- -------- EASY_PROFILER OPTIONS: --------
--   Use rtdsc as a timer
--   Default listening port = 28077
--   Auto-start listening = OFF
--   Profile self = OFF
--   Profile self blocks initial status = OFF
--   Truncate block dynamic names = OFF (may cause crash if using dynamic block names of length >2816 symbols)
--   Check maximum EASY_VALUE data size = OFF (may cause crash if using EASY_VALUE arrays of total data size >2816 bytes)
--   Implicit thread registration = ON
--   Log messages = OFF
--   Function names pretty-print = OFF
--   Use EasyProfiler colors palette = ON
--   Shared library: ON
-- ------ END EASY_PROFILER OPTIONS -------
--
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
-- Found Threads: TRUE
-- Performing Test HAVE_STDATOMIC
-- Performing Test HAVE_STDATOMIC - Success
-- Found WrapAtomic: TRUE
-- Found OpenGL: /usr/lib/libOpenGL.so
-- Found WrapOpenGL: TRUE
-- Found WrapVulkanHeaders: /usr/include
-- Using Qt v6.10.0
-- Configuring done (0.3s)
-- Generating done (0.0s)
-- Build files have been written to: /home/garm/projects/easy_profiler/build

$ make
[  1%] Building CXX object easy_profiler_core/CMakeFiles/easy_profiler.dir/base_block_descriptor.cpp.o
[  3%] Building CXX object easy_profiler_core/CMakeFiles/easy_profiler.dir/block.cpp.o
[  5%] Building CXX object easy_profiler_core/CMakeFiles/easy_profiler.dir/block_descriptor.cpp.o
[  7%] Building CXX object easy_profiler_core/CMakeFiles/easy_profiler.dir/easy_socket.cpp.o
[  8%] Building CXX object easy_profiler_core/CMakeFiles/easy_profiler.dir/event_trace_win.cpp.o
[ 10%] Building CXX object easy_profiler_core/CMakeFiles/easy_profiler.dir/nonscoped_block.cpp.o
[ 12%] Building CXX object easy_profiler_core/CMakeFiles/easy_profiler.dir/profile_manager.cpp.o
[ 14%] Building CXX object easy_profiler_core/CMakeFiles/easy_profiler.dir/profiler.cpp.o
[ 16%] Building CXX object easy_profiler_core/CMakeFiles/easy_profiler.dir/reader.cpp.o
[ 17%] Building CXX object easy_profiler_core/CMakeFiles/easy_profiler.dir/serialized_block.cpp.o
[ 19%] Building CXX object easy_profiler_core/CMakeFiles/easy_profiler.dir/thread_storage.cpp.o
[ 21%] Building CXX object easy_profiler_core/CMakeFiles/easy_profiler.dir/writer.cpp.o
[ 23%] Linking CXX shared library ../bin/libeasy_profiler.so
[ 23%] Built target easy_profiler
[ 23%] Built target profiler_gui_autogen_timestamp_deps
[ 25%] Automatic MOC for target profiler_gui
AutoMoc: /usr/lib/qt6/moc: /usr/lib/qt6/../libpcre2-16.so.0: no version information available (required by /usr/lib/qt6/moc)
AutoMoc: /usr/lib/qt6/moc: /usr/lib/qt6/../libpcre2-16.so.0: no version information available (required by /usr/lib/qt6/moc)
AutoMoc: /usr/lib/qt6/moc: /usr/lib/qt6/../libpcre2-16.so.0: no version information available (required by /usr/lib/qt6/moc)
AutoMoc: /usr/lib/qt6/moc: /usr/lib/qt6/../libpcre2-16.so.0: no version information available (required by /usr/lib/qt6/moc)
AutoMoc: /usr/lib/qt6/moc: /usr/lib/qt6/../libpcre2-16.so.0: no version information available (required by /usr/lib/qt6/moc)
AutoMoc: /usr/lib/qt6/moc: /usr/lib/qt6/../libpcre2-16.so.0: no version information available (required by /usr/lib/qt6/moc)
AutoMoc: /usr/lib/qt6/moc: /usr/lib/qt6/../libpcre2-16.so.0: no version information available (required by /usr/lib/qt6/moc)
AutoMoc: /usr/lib/qt6/moc: /usr/lib/qt6/../libpcre2-16.so.0: no version information available (required by /usr/lib/qt6/moc)
AutoMoc: /usr/lib/qt6/moc: /usr/lib/qt6/../libpcre2-16.so.0: no version information available (required by /usr/lib/qt6/moc)
AutoMoc: /usr/lib/qt6/moc: /usr/lib/qt6/../libpcre2-16.so.0: no version information available (required by /usr/lib/qt6/moc)
AutoMoc: /usr/lib/qt6/moc: /usr/lib/qt6/../libpcre2-16.so.0: no version information available (required by /usr/lib/qt6/moc)
AutoMoc: /usr/lib/qt6/moc: /usr/lib/qt6/../libpcre2-16.so.0: no version information available (required by /usr/lib/qt6/moc)
AutoMoc: /usr/lib/qt6/moc: /usr/lib/qt6/../libpcre2-16.so.0: no version information available (required by /usr/lib/qt6/moc)
AutoMoc: /usr/lib/qt6/moc: /usr/lib/qt6/../libpcre2-16.so.0: no version information available (required by /usr/lib/qt6/moc)
AutoMoc: /usr/lib/qt6/moc: /usr/lib/qt6/../libpcre2-16.so.0: no version information available (required by /usr/lib/qt6/moc)
AutoMoc: /usr/lib/qt6/moc: /usr/lib/qt6/../libpcre2-16.so.0: no version information available (required by /usr/lib/qt6/moc)
AutoMoc: /usr/lib/qt6/moc: /usr/lib/qt6/../libpcre2-16.so.0: no version information available (required by /usr/lib/qt6/moc)
AutoMoc: /usr/lib/qt6/moc: /usr/lib/qt6/../libpcre2-16.so.0: no version information available (required by /usr/lib/qt6/moc)
[ 25%] Built target profiler_gui_autogen
[ 26%] Automatic RCC for resources.qrc
[ 28%] Building CXX object profiler_gui/CMakeFiles/profiler_gui.dir/profiler_gui_autogen/mocs_compilation.cpp.o
[ 30%] Building CXX object profiler_gui/CMakeFiles/profiler_gui.dir/main.cpp.o
[ 32%] Building CXX object profiler_gui/CMakeFiles/profiler_gui.dir/arbitrary_value_inspector.cpp.o
[ 33%] Building CXX object profiler_gui/CMakeFiles/profiler_gui.dir/arbitrary_value_tooltip.cpp.o
[ 35%] Building CXX object profiler_gui/CMakeFiles/profiler_gui.dir/blocks_graphics_view.cpp.o
/home/garm/projects/easy_profiler/profiler_gui/blocks_graphics_view.cpp: In member function ‘virtual void ThreadNamesWidget::mousePressEvent(QMouseEvent*)’:
/home/garm/projects/easy_profiler/profiler_gui/blocks_graphics_view.cpp:3289:159: warning: ‘QMouseEvent::QMouseEvent(QEvent::Type, const QPointF&, Qt::MouseButton, Qt::MouseButtons, Qt::KeyboardModifiers, const QPointingDevice*)’ is deprecated: Use another constructor [-Wdeprecated-declarations]
 3289 | ) - QPointF(sceneRect().width(), 0), _event->button(), _event->buttons() & ~Qt::RightButton, _event->modifiers());
      |                                                                                                                 ^
In file included from /usr/include/qt6/QtGui/QKeyEvent:1,
                 from /home/garm/projects/easy_profiler/profiler_gui/blocks_graphics_view.cpp:75:
/usr/include/qt6/QtGui/qevent.h:202:5: note: declared here
  202 |     QMouseEvent(Type type, const QPointF &localPos, Qt::MouseButton button,
      |     ^~~~~~~~~~~
/home/garm/projects/easy_profiler/profiler_gui/blocks_graphics_view.cpp: In member function ‘virtual void ThreadNamesWidget::mouseReleaseEvent(QMouseEvent*)’:
/home/garm/projects/easy_profiler/profiler_gui/blocks_graphics_view.cpp:3328:159: warning: ‘QMouseEvent::QMouseEvent(QEvent::Type, const QPointF&, Qt::MouseButton, Qt::MouseButtons, Qt::KeyboardModifiers, const QPointingDevice*)’ is deprecated: Use another constructor [-Wdeprecated-declarations]
 3328 | ) - QPointF(sceneRect().width(), 0), _event->button(), _event->buttons() & ~Qt::RightButton, _event->modifiers());
      |                                                                                                                 ^
/usr/include/qt6/QtGui/qevent.h:202:5: note: declared here
  202 |     QMouseEvent(Type type, const QPointF &localPos, Qt::MouseButton button,
      |     ^~~~~~~~~~~
/home/garm/projects/easy_profiler/profiler_gui/blocks_graphics_view.cpp: In member function ‘virtual void ThreadNamesWidget::mouseMoveEvent(QMouseEvent*)’:
/home/garm/projects/easy_profiler/profiler_gui/blocks_graphics_view.cpp:3337:159: warning: ‘QMouseEvent::QMouseEvent(QEvent::Type, const QPointF&, Qt::MouseButton, Qt::MouseButtons, Qt::KeyboardModifiers, const QPointingDevice*)’ is deprecated: Use another constructor [-Wdeprecated-declarations]
 3337 | ) - QPointF(sceneRect().width(), 0), _event->button(), _event->buttons() & ~Qt::RightButton, _event->modifiers());
      |                                                                                                                 ^
/usr/include/qt6/QtGui/qevent.h:202:5: note: declared here
  202 |     QMouseEvent(Type type, const QPointF &localPos, Qt::MouseButton button,
      |     ^~~~~~~~~~~
[ 37%] Building CXX object profiler_gui/CMakeFiles/profiler_gui.dir/blocks_tree_widget.cpp.o
[ 39%] Building CXX object profiler_gui/CMakeFiles/profiler_gui.dir/bookmarks_editor.cpp.o
[ 41%] Building CXX object profiler_gui/CMakeFiles/profiler_gui.dir/common_functions.cpp.o
/home/garm/projects/easy_profiler/profiler_gui/common_functions.cpp: In function ‘QString arrayToString(const profiler::ArbitraryValue&, int)’:
/home/garm/projects/easy_profiler/profiler_gui/common_functions.cpp:97:101: error: no matching function for call to ‘QChar::QChar(profiler::Value<profiler::DataType::Int8, true>::value_type)’
   97 |         case profiler::DataType::Int8:   return QChar(_serializedValue.toArray<int8_t>()->at(_index));
      |                                                                                                     ^
/home/garm/projects/easy_profiler/profiler_gui/common_functions.cpp:97:101: note: there are 8 candidates
In file included from /usr/include/qt6/QtCore/qstring.h:15,
                 from /usr/include/qt6/QtCore/qhashfunctions.h:9,
                 from /usr/include/qt6/QtCore/qlist.h:11,
                 from /home/garm/projects/easy_profiler/profiler_gui/common_functions.cpp:56:
/usr/include/qt6/QtCore/qchar.h:149:43: note: candidate 1: ‘template<class Char, typename std::enable_if<std::is_same<Char, unsigned char>::value, bool>::type <anonymous> > constexpr QChar::QChar(Char)’
  149 |     QT_ASCII_CAST_WARN constexpr explicit QChar(const Char c) noexcept : ucs(c) { }
      |                                           ^~~~~
/usr/include/qt6/QtCore/qchar.h:149:43: note: template argument deduction/substitution failed:
/usr/include/qt6/QtCore/qchar.h:148:66: error: no type named ‘type’ in ‘struct std::enable_if<false, bool>’
  148 |     template <typename Char, if_explicit_ascii_warn_char<Char> = true>
      |                                                                  ^~~~
/usr/include/qt6/QtCore/qchar.h:143:45: note: candidate 2: ‘template<class Char, typename std::enable_if<std::is_same<Char, char>::value, bool>::type <anonymous> > constexpr QChar::QChar(Char)’
  143 |     QT_ASCII_CAST_WARN constexpr Q_IMPLICIT QChar(const Char ch) noexcept : ucs(uchar(ch)) {}
      |                                             ^~~~~
/usr/include/qt6/QtCore/qchar.h:143:45: note: template argument deduction/substitution failed:
/usr/include/qt6/QtCore/qchar.h:142:66: error: no type named ‘type’ in ‘struct std::enable_if<false, bool>’
  142 |     template <typename Char, if_implicit_ascii_warn_char<Char> = true>
      |                                                                  ^~~~
/usr/include/qt6/QtCore/qchar.h:134:24: note: candidate 3: ‘template<class Char, typename std::enable_if<std::disjunction<std::is_same<Char, char32_t>, std::conjunction<std::is_same<Char, wchar_t>, std::integral_constant<bool, true> >, std::is_same<Char, int>, std::is_same<Char, unsigned int> >::value, bool>::type <anonymous> > constexpr QChar::QChar(Char)’
  134 |     constexpr explicit QChar(const Char ch) noexcept
      |                        ^~~~~
/usr/include/qt6/QtCore/qchar.h:134:24: note: template argument deduction/substitution failed:
/usr/include/qt6/QtCore/qchar.h:133:66: error: no type named ‘type’ in ‘struct std::enable_if<false, bool>’
  133 |     template <typename Char, if_explicit_conversion_char<Char> = true>
      |                                                                  ^~~~
/usr/include/qt6/QtCore/qchar.h:132:26: note: candidate 4: ‘template<class Char, typename std::enable_if<std::disjunction<std::is_same<Char, short unsigned int>, std::is_same<Char, short int>, std::is_same<Char, QChar::SpecialCharacter>, std::is_same<Char, QLatin1Char>, std::conjunction<std::is_same<Char, wchar_t>, std::negation<std::integral_constant<bool, true> > >, std::is_same<Char, char16_t> >::value, bool>::type <anonymous> > constexpr QChar::QChar(Char)’
  132 |     constexpr Q_IMPLICIT QChar(const Char ch) noexcept : ucs(char16_t(ch)) {}
      |                          ^~~~~
/usr/include/qt6/QtCore/qchar.h:132:26: note: template argument deduction/substitution failed:
/usr/include/qt6/QtCore/qchar.h:131:66: error: no type named ‘type’ in ‘struct std::enable_if<false, bool>’
  131 |     template <typename Char, if_implicit_conversion_char<Char> = true>
      |                                                                  ^~~~
/usr/include/qt6/QtCore/qchar.h:119:24: note: candidate 5: ‘constexpr QChar::QChar(uchar, uchar)’
  119 |     constexpr explicit QChar(uchar c, uchar r) noexcept : ucs(char16_t((r << 8) | c)) {}
      |                        ^~~~~
/usr/include/qt6/QtCore/qchar.h:119:24: note: candidate expects 2 arguments, 1 provided
/usr/include/qt6/QtCore/qchar.h:115:26: note: candidate 6: ‘constexpr QChar::QChar()’
  115 |     constexpr Q_IMPLICIT QChar() noexcept : ucs(0) {}
      |                          ^~~~~
/usr/include/qt6/QtCore/qchar.h:115:26: note: candidate expects 0 arguments, 1 provided
/usr/include/qt6/QtCore/qchar.h:48:31: note: candidate 7: ‘constexpr QChar::QChar(const QChar&)’
   48 | class QT6_ONLY(Q_CORE_EXPORT) QChar {
      |                               ^~~~~
/usr/include/qt6/QtCore/qchar.h:48:31: note: no known conversion for argument 1 from ‘profiler::Value<profiler::DataType::Int8, true>::value_type’ {aka ‘signed char’} to ‘const QChar&’
/usr/include/qt6/QtCore/qchar.h:48:31: note: candidate 8: ‘constexpr QChar::QChar(QChar&&)’
/usr/include/qt6/QtCore/qchar.h:48:31: note: no known conversion for argument 1 from ‘profiler::Value<profiler::DataType::Int8, true>::value_type’ {aka ‘signed char’} to ‘QChar&&’
/home/garm/projects/easy_profiler/profiler_gui/common_functions.cpp: In function ‘QString singleValueToString(const profiler::ArbitraryValue&)’:
/home/garm/projects/easy_profiler/profiler_gui/common_functions.cpp:118:98: error: no matching function for call to ‘QChar::QChar(profiler::Value<profiler::DataType::Int8, false>::value_type)’
  118 |         case profiler::DataType::Int8:   return QChar(_serializedValue.toValue<int8_t>()->value());
      |                                                                                                  ^
/home/garm/projects/easy_profiler/profiler_gui/common_functions.cpp:118:98: note: there are 8 candidates
/usr/include/qt6/QtCore/qchar.h:149:43: note: candidate 1: ‘template<class Char, typename std::enable_if<std::is_same<Char, unsigned char>::value, bool>::type <anonymous> > constexpr QChar::QChar(Char)’
  149 |     QT_ASCII_CAST_WARN constexpr explicit QChar(const Char c) noexcept : ucs(c) { }
      |                                           ^~~~~
/usr/include/qt6/QtCore/qchar.h:149:43: note: template argument deduction/substitution failed:
/usr/include/qt6/QtCore/qchar.h:148:66: error: no type named ‘type’ in ‘struct std::enable_if<false, bool>’
  148 |     template <typename Char, if_explicit_ascii_warn_char<Char> = true>
      |                                                                  ^~~~
/usr/include/qt6/QtCore/qchar.h:143:45: note: candidate 2: ‘template<class Char, typename std::enable_if<std::is_same<Char, char>::value, bool>::type <anonymous> > constexpr QChar::QChar(Char)’
  143 |     QT_ASCII_CAST_WARN constexpr Q_IMPLICIT QChar(const Char ch) noexcept : ucs(uchar(ch)) {}
      |                                             ^~~~~
/usr/include/qt6/QtCore/qchar.h:143:45: note: template argument deduction/substitution failed:
/usr/include/qt6/QtCore/qchar.h:142:66: error: no type named ‘type’ in ‘struct std::enable_if<false, bool>’
  142 |     template <typename Char, if_implicit_ascii_warn_char<Char> = true>
      |                                                                  ^~~~
/usr/include/qt6/QtCore/qchar.h:134:24: note: candidate 3: ‘template<class Char, typename std::enable_if<std::disjunction<std::is_same<Char, char32_t>, std::conjunction<std::is_same<Char, wchar_t>, std::integral_constant<bool, true> >, std::is_same<Char, int>, std::is_same<Char, unsigned int> >::value, bool>::type <anonymous> > constexpr QChar::QChar(Char)’
  134 |     constexpr explicit QChar(const Char ch) noexcept
      |                        ^~~~~
/usr/include/qt6/QtCore/qchar.h:134:24: note: template argument deduction/substitution failed:
/usr/include/qt6/QtCore/qchar.h:133:66: error: no type named ‘type’ in ‘struct std::enable_if<false, bool>’
  133 |     template <typename Char, if_explicit_conversion_char<Char> = true>
      |                                                                  ^~~~
/usr/include/qt6/QtCore/qchar.h:132:26: note: candidate 4: ‘template<class Char, typename std::enable_if<std::disjunction<std::is_same<Char, short unsigned int>, std::is_same<Char, short int>, std::is_same<Char, QChar::SpecialCharacter>, std::is_same<Char, QLatin1Char>, std::conjunction<std::is_same<Char, wchar_t>, std::negation<std::integral_constant<bool, true> > >, std::is_same<Char, char16_t> >::value, bool>::type <anonymous> > constexpr QChar::QChar(Char)’
  132 |     constexpr Q_IMPLICIT QChar(const Char ch) noexcept : ucs(char16_t(ch)) {}
      |                          ^~~~~
/usr/include/qt6/QtCore/qchar.h:132:26: note: template argument deduction/substitution failed:
/usr/include/qt6/QtCore/qchar.h:131:66: error: no type named ‘type’ in ‘struct std::enable_if<false, bool>’
  131 |     template <typename Char, if_implicit_conversion_char<Char> = true>
      |                                                                  ^~~~
/usr/include/qt6/QtCore/qchar.h:119:24: note: candidate 5: ‘constexpr QChar::QChar(uchar, uchar)’
  119 |     constexpr explicit QChar(uchar c, uchar r) noexcept : ucs(char16_t((r << 8) | c)) {}
      |                        ^~~~~
/usr/include/qt6/QtCore/qchar.h:119:24: note: candidate expects 2 arguments, 1 provided
/usr/include/qt6/QtCore/qchar.h:115:26: note: candidate 6: ‘constexpr QChar::QChar()’
  115 |     constexpr Q_IMPLICIT QChar() noexcept : ucs(0) {}
      |                          ^~~~~
/usr/include/qt6/QtCore/qchar.h:115:26: note: candidate expects 0 arguments, 1 provided
/usr/include/qt6/QtCore/qchar.h:48:31: note: candidate 7: ‘constexpr QChar::QChar(const QChar&)’
   48 | class QT6_ONLY(Q_CORE_EXPORT) QChar {
      |                               ^~~~~
/usr/include/qt6/QtCore/qchar.h:48:31: note: no known conversion for argument 1 from ‘profiler::Value<profiler::DataType::Int8, false>::value_type’ {aka ‘signed char’} to ‘const QChar&’
/usr/include/qt6/QtCore/qchar.h:48:31: note: candidate 8: ‘constexpr QChar::QChar(QChar&&)’
/usr/include/qt6/QtCore/qchar.h:48:31: note: no known conversion for argument 1 from ‘profiler::Value<profiler::DataType::Int8, false>::value_type’ {aka ‘signed char’} to ‘QChar&&’
make[2]: *** [profiler_gui/CMakeFiles/profiler_gui.dir/build.make:242: profiler_gui/CMakeFiles/profiler_gui.dir/common_functions.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:237: profiler_gui/CMakeFiles/profiler_gui.dir/all] Error 2
make: *** [Makefile:136: all] Error 2

No idea if it is related to newer qt6 no longer allowing string and qchar comparisons as per this thread https://forum.qt.io/topic/154949/qt6-comparing-to-qchar-not-working-anymore/3

I'll try removing qt6 from my system and see if it just works with the older qt5 perhaps and update this soon. Thanks!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions