Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 946125 - media-sound/hydrogen-1.2.4[lash] src/cli/main.cpp:342:49: error: passing ‘const QString’ as ‘this’ argument discards qualifiers [-fpermissive]
Summary: media-sound/hydrogen-1.2.4[lash] src/cli/main.cpp:342:49: error: passing ‘con...
Status: UNCONFIRMED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: Professional Audio Applications Maintainers
URL: https://github.com/hydrogen-music/hyd...
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2024-12-08 19:13 UTC by Xavier Miller
Modified: 2024-12-30 08:48 UTC (History)
2 users (show)

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


Attachments
build log (build.log,154.70 KB, text/x-log)
2024-12-08 19:14 UTC, Xavier Miller
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Xavier Miller 2024-12-08 19:13:38 UTC
FAILED: src/cli/CMakeFiles/h2cli.dir/main.cpp.o                                                                                                                                                                                              
/usr/bin/x86_64-pc-linux-gnu-g++ -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_NO_DEBUG -DQT_TESTCASE_BUILDDIR=\"/var/tmp/portage/media-sound/hydrogen-1.2.4/work/hydrogen-1.2.4_build\" -DQT_TESTLIB_LIB -DQT_WIDGETS_LIB -DQT_XMLPATTERN
S_LIB -DQT_XML_LIB -I/var/tmp/portage/media-sound/hydrogen-1.2.4/work/hydrogen-1.2.4_build/src/cli -I/var/tmp/portage/media-sound/hydrogen-1.2.4/work/hydrogen-1.2.4/src/cli -I/var/tmp/portage/media-sound/hydrogen-1.2.4/work/hydrogen-1.2.
4_build/src/cli/h2cli_autogen/include -I/var/tmp/portage/media-sound/hydrogen-1.2.4/work/hydrogen-1.2.4/src -I/var/tmp/portage/media-sound/hydrogen-1.2.4/work/hydrogen-1.2.4_build/src -I/usr/include/lash-1.0 -I/usr/include/opus -isystem 
/usr/include/qt5 -isystem /usr/include/qt5/QtCore -isystem /usr/lib64/qt5/mkspecs/linux-g++ -isystem /usr/include/qt5/QtXml -isystem /usr/include/qt5/QtXmlPatterns -isystem /usr/include/qt5/QtNetwork -isystem /usr/include/qt5/QtTest -isy
stem /usr/include/qt5/QtGui -isystem /usr/include/qt5/QtWidgets  -O2 -pipe -fomit-frame-pointer -march=broadwell -mmmx -mpopcnt -msse -msse2 -msse3 -mssse3 -msse4.1 -msse4.2 -mavx -mavx2 -mfma -mbmi -mbmi2 -maes -mpclmul -madx -mabm -mcx
16 -mf16c -mfsgsbase -mfxsr -msahf -mlzcnt -mmovbe -mprfchw -mrdrnd -mrdseed -mxsave -mxsaveopt --param l1-cache-size=32 --param l1-cache-line-size=64 --param l2-cache-size=3072 -mtune=broadwell -fno-implement-inlines -std=gnu++17 -fPIC 
-MD -MT src/cli/CMakeFiles/h2cli.dir/main.cpp.o -MF src/cli/CMakeFiles/h2cli.dir/main.cpp.o.d -o src/cli/CMakeFiles/h2cli.dir/main.cpp.o -c /var/tmp/portage/media-sound/hydrogen-1.2.4/work/hydrogen-1.2.4/src/cli/main.cpp                 
/var/tmp/portage/media-sound/hydrogen-1.2.4/work/hydrogen-1.2.4/src/cli/main.cpp: In function ‘int main(int, char**)’:                                                                                                                       
/var/tmp/portage/media-sound/hydrogen-1.2.4/work/hydrogen-1.2.4/src/cli/main.cpp:342:49: error: passing ‘const QString’ as ‘this’ argument discards qualifiers [-fpermissive]                                                                
  342 |                                 sSongFilename = "";                                                                                                                                                                                  
      |                                                 ^~                                                                                                                                                                                   
In file included from /usr/include/qt5/QtCore/qcoreapplication.h:44,                                                                                                                                                                         
                 from /usr/include/qt5/QtCore/QCoreApplication:1,                                                                                                                                                                            
                 from /var/tmp/portage/media-sound/hydrogen-1.2.4/work/hydrogen-1.2.4/src/cli/main.cpp:28:                                                                                                                                   
/usr/include/qt5/QtCore/qstring.h:838:40: note:   in call to ‘QString& QString::operator=(const char*)’                                                                                                                                      
  838 |     inline QT_ASCII_CAST_WARN QString &operator=(const char *ch)                                                                                                                                                                     
      |                                        ^~~~~~~~                                                                                                                                                                                      
/var/tmp/portage/media-sound/hydrogen-1.2.4/work/hydrogen-1.2.4/src/cli/main.cpp:343:53: error: passing ‘const QString’ as ‘this’ argument discards qualifiers [-fpermissive]                                                                
  343 |                                 sSongFilename.append( QString::fromLocal8Bit(lash_event_get_string(lash_event)) );                                                                                                                   
      |                                 ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                                                                                                    
/usr/include/qt5/QtCore/qstring.h:546:14: note:   in call to ‘QString& QString::append(const QString&)’
  546 |     QString &append(const QString &s);
      |              ^~~~~~
/var/tmp/portage/media-sound/hydrogen-1.2.4/work/hydrogen-1.2.4/src/cli/main.cpp:344:53: error: passing ‘const QString’ as ‘this’ argument discards qualifiers [-fpermissive]
  344 |                                 sSongFilename.append("/hydrogen.h2song");
      |                                 ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
/usr/include/qt5/QtCore/qstring.h:850:40: note:   in call to ‘QString& QString::append(const char*)’
  850 |     inline QT_ASCII_CAST_WARN QString &append(const char *s)
      |                                        ^~~~~~
ninja: build stopped: subcommand failed.


Reproducible: Always




emerge --info '=media-sound/hydrogen-1.2.4::gentoo'
Portage 3.0.66.1 (python 3.12.7-final-0, default/linux/amd64/23.0/no-multilib, gcc-14, glibc-2.40-r7, 6.12.3 x86_64)
=================================================================
                         System Settings
=================================================================
System uname: Linux-6.12.3-x86_64-Intel-R-_Core-TM-_i5-5200U_CPU_@_2.20GHz-with-glibc2.40
KiB Mem:    16275776 total,   8185612 free
KiB Swap:   33554428 total,  33554428 free
Timestamp of repository gentoo: Sun, 08 Dec 2024 16:33:22 +0000
Timestamp of repository guru: Sat, 07 Dec 2024 21:03:21 +0000
sh bash 5.2_p37
ld GNU ld (Gentoo 2.43 p3) 2.43.1
app-misc/pax-utils:        1.3.8::gentoo
app-shells/bash:           5.2_p37::gentoo
dev-build/autoconf:        2.13-r8::gentoo, 2.71-r7::gentoo, 2.72-r1::gentoo
dev-build/automake:        1.17-r1::gentoo
dev-build/cmake:           3.31.2::gentoo
dev-build/libtool:         2.5.4::gentoo
dev-build/make:            4.4.1-r100::gentoo
dev-build/meson:           1.6.0-r1::gentoo
dev-java/java-config:      2.3.4::gentoo
dev-lang/perl:             5.40.0-r1::gentoo
dev-lang/python:           3.12.7_p1::gentoo, 3.13.0::gentoo
dev-lang/rust:             1.81.0-r100::gentoo, 1.83.0::gentoo
sys-apps/baselayout:       2.17::gentoo
sys-apps/openrc:           0.55.1::gentoo
sys-apps/sandbox:          2.40::gentoo
sys-devel/binutils:        2.43-r2::gentoo
sys-devel/binutils-config: 5.5.2::gentoo
sys-devel/clang:           18.1.8-r6::gentoo, 19.1.5::gentoo
sys-devel/gcc:             14.2.1_p20241116::gentoo
sys-devel/gcc-config:      2.12.1::gentoo
sys-devel/lld:             18.1.8::gentoo, 19.1.5::gentoo
sys-devel/llvm:            18.1.8-r6::gentoo, 19.1.5::gentoo
sys-kernel/linux-headers:  6.12::gentoo (virtual/os-headers)
sys-libs/glibc:            2.40-r7::gentoo
Repositories:

gentoo
    location: /var/portage/repos/gentoo
    sync-type: rsync
    sync-uri: rsync://rsync.gentoo.org/gentoo-portage
    priority: -1000
    volatile: True
    sync-rsync-verify-jobs: 1
    sync-rsync-extra-opts: 
    sync-rsync-verify-metamanifest: yes
    sync-rsync-verify-max-age: 3

audio-overlay
    location: /var/portage/repos/audio-overlay
    masters: gentoo
    volatile: True

guru
    location: /var/portage/repos/guru
    masters: gentoo
    volatile: True

inode64-overlay
    location: /var/portage/repos/inode64-overlay
    masters: gentoo
    volatile: True

local
    location: /usr/local/portage
    masters: gentoo
    volatile: True

crossdev
    location: /data/nas/xavier/portage/redpoint2/var/db/repos/crossdev
    masters: gentoo
    priority: 10
    volatile: True

ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="@FREE freedist as-is"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -pipe -fomit-frame-pointer -march=broadwell -mmmx -mpopcnt -msse -msse2 -msse3 -mssse3 -msse4.1 -msse4.2 -mavx -mavx2 -mfma -mbmi -mbmi2 -maes -mpclmul -madx -mabm -mcx16 -mf16c -mfsgsbase -mfxsr -msahf -mlzcnt -mmovbe -mprfchw -mrdrnd -mrdseed -mxsave -mxsaveopt --param l1-cache-size=32 --param l1-cache-line-size=64 --param l2-cache-size=3072 -mtune=broadwell"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/lib64/libreoffice/program/sofficerc /usr/share/config /usr/share/gnupg/qualified.txt"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d"
CXXFLAGS="-O2 -pipe -fomit-frame-pointer -march=broadwell -mmmx -mpopcnt -msse -msse2 -msse3 -mssse3 -msse4.1 -msse4.2 -mavx -mavx2 -mfma -mbmi -mbmi2 -maes -mpclmul -madx -mabm -mcx16 -mf16c -mfsgsbase -mfxsr -msahf -mlzcnt -mmovbe -mprfchw -mrdrnd -mrdseed -mxsave -mxsaveopt --param l1-cache-size=32 --param l1-cache-line-size=64 --param l2-cache-size=3072 -mtune=broadwell"
DISTDIR="/var/portage/distfiles"
EMERGE_DEFAULT_OPTS="--with-bdeps y --quiet-build=n --buildpkg"
ENV_UNSET="CARGO_HOME DBUS_SESSION_BUS_ADDRESS DISPLAY GDK_PIXBUF_MODULE_FILE GOBIN GOPATH PERL5LIB PERL5OPT PERLPREFIX PERL_CORE PERL_MB_OPT PERL_MM_OPT XAUTHORITY XDG_CACHE_HOME XDG_CONFIG_HOME XDG_DATA_HOME XDG_RUNTIME_DIR XDG_STATE_HOME"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs buildpkg buildpkg-live candy config-protect-if-modified distlocks ebuild-locks fixlafiles ipc-sandbox merge-sync merge-wait multilib-strict network-sandbox news parallel-fetch pid-sandbox pkgdir-index-trusted preserve-libs protect-owned qa-unresolved-soname-deps sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="http://distfiles.gentoo.org"
LANG="fr_BE.utf8"
LDFLAGS="-Wl,-O1 -Wl,--sort-common -Wl,--hash-style=gnu -Wl,--as-needed"
LEX="flex"
LINGUAS="fr fr-BE fr-FR nl nl-BE nl-NL en en-GB en-US"
MAKEOPTS="-j7 -l13"
PKGDIR="/var/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --exclude=/.git"
PORTAGE_TMPDIR="/var/tmp"
SHELL="/bin/bash"
USE="3dnow 3dnowext X a52 aac acpi alsa amd64 apng branding bzip2 cairo cdda cet crossdev crypt css cups dbus display-manager dlna dri dts dvd egl elogind exif fftw flac fluidsynth gif glamor gles2 gnome-keyring gpm gtk gtk3 gudev gui iconv imagemagick joystick jpeg keyring ladspa lash lcms libcanberra libinput libnotify libsamplerate libtirpc lzma mad midi mmx mng mp3 mpeg mtp ncurses nls ogg opengl openmp opus osc pam pango pcre pdf png policykit powermanagement ppds printsupport python3 qt5 qt6 readline rubberband sddm sdl seccomp sna sndfile snmp spell sqlite sse sse2 ssl startup-notification svg symlink system-bootstrap system-llvm test-rust tiff timidity truetype udev udisks unicode upnp upower usb vaapi vdpau vorbis wmf x264 x265 xattr xcb xinerama xkb xml xosd xscreensaver xv xvid xvmc zlib zstd" ABI_X86="64" ADA_TARGET="gcc_12" ALSA_CARDS="hda-intel usb-audio virmidi" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_anon authn_dbm authn_file authz_dbm authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir env expires ext_filter file_cache filter headers include info log_config logio mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="karbon sheets words" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="aes avx avx2 f16c fma3 mmx mmxext pclmul popcnt rdrand sse sse2 sse3 sse4_1 sse4_2 ssse3" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock greis isync itrax navcom oceanserver oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 tsip tripmate tnt ublox" GUILE_SINGLE_TARGET="3-0" GUILE_TARGETS="3-0" INPUT_DEVICES="keyboard mouse libinput joystick" KERNEL="linux" L10N="fr fr-BE fr-FR nl nl-BE nl-NL en en-GB en-US" LCD_DEVICES="bayrad cfontz glk hd44780 lb216 lcdm001 mtxorb text" LLVM_TARGETS="X86 AMDGPU" LUA_SINGLE_TARGET="lua5-1" LUA_TARGETS="lua5-1" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php8-2" POSTGRES_TARGETS="postgres16" PYTHON_SINGLE_TARGET="python3_12" PYTHON_TARGETS="python3_12" QEMU_SOFTMMU_TARGETS="arm i386" QEMU_USER_TARGETS="arm i386" RUBY_TARGETS="ruby32" SANE_BACKENDS="hp" VIDEO_CARDS="intel i915 i965" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipp2p iface geoip fuzzy condition tarpit sysrq proto logmark ipmark dhcpmac delude chaos account"
Unset:  ADDR2LINE, AR, ARFLAGS, AS, ASFLAGS, CC, CCLD, CONFIG_SHELL, CPP, CPPFLAGS, CTARGET, CXX, CXXFILT, ELFEDIT, EXTRA_ECONF, F77FLAGS, FC, GCOV, GPROF, INSTALL_MASK, LC_ALL, LD, LFLAGS, LIBTOOL, MAKE, MAKEFLAGS, NM, OBJCOPY, OBJDUMP, PORTAGE_BINHOST, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, PYTHONPATH, RANLIB, READELF, RUSTFLAGS, SIZE, STRINGS, STRIP, YACC, YFLAGS
Comment 1 Xavier Miller 2024-12-08 19:14:55 UTC
Created attachment 913598 [details]
build log
Comment 2 Xavier Miller 2024-12-08 19:20:26 UTC
it compiles fine on ~arm64

and hydrogen-1.2.3 too on this ~amd64 config
Comment 3 Xavier Miller 2024-12-08 19:38:54 UTC
(In reply to Xavier Miller from comment #2)
> it compiles fine on ~arm64
> 
> and hydrogen-1.2.3 too on this ~amd64 config

because LASH is not installed on the ~arm64 config.

the code happens when lash is present. The variable sSongFileName is defined as const QString then reassigned in this code snipplet

Will take a look at the master branch
Comment 4 Xavier Miller 2024-12-08 19:50:44 UTC
the code in version 1.2.3 doesn't define sSongFileName as const.

I will file a bug at hydrogen github project
Comment 5 Xavier Miller 2024-12-10 21:49:44 UTC
at https://github.com/hydrogen-music/hydrogen/issues/2076 they say "Unfortunately, I can neither test the LASH code locally or in our build pipeline since LASH support was removed since a while in a Linux OSs I do use"

Is LASH still active in Gentoo?

lash USE flag is enabled in my config but I don't know if I really need it. I had emerged a lot of audio&music apps and tools to test them.