Bug 2149046

Summary: [abrt] mkvtoolnix-gui: qAbort(): mkvtoolnix-gui killed by SIGABRT
Product: [Fedora] Fedora Reporter: Saravanan <saravanan.2407>
Component: mkvtoolnixAssignee: Dominik 'Rathann' Mierzejewski <dominik>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 37CC: bugzilla-redhat, dgunchev, dmitry, dominik, kwizart, martin.sourada
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Unspecified   
URL: https://retrace.fedoraproject.org/faf/reports/bthash/e44259ed4f84daead129fe48ef490785f276b8a5
Whiteboard: abrt_hash:6bb8f9da6e92e8c0906a8ba3dba639b3512840c1;VARIANT_ID=workstation;
Fixed In Version: qt6-qtmultimedia-6.4.1-3.fc37 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2022-12-09 10:52:14 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 2150231    
Bug Blocks:    
Attachments:
Description Flags
File: backtrace
none
File: core_backtrace
none
File: cpuinfo
none
File: dso_list
none
File: environ
none
File: limits
none
File: maps
none
File: mountinfo
none
File: open_fds
none
File: proc_pid_status
none
File: var_log_messages none

Description Saravanan 2022-11-28 17:00:57 UTC
Description of problem:
Just opening this app caused the crash

Version-Release number of selected component:
mkvtoolnix-gui-71.1.0-1.fc37

Additional info:
reporter:       libreport-2.17.4
backtrace_rating: 4
cgroup:         0::/user.slice/user-1000.slice/user/app.slice/app-gnome-org.bunkus.mkvtoolnix\x2dgui-15048.scope
cmdline:        mkvtoolnix-gui
crash_function: qAbort
executable:     /usr/bin/mkvtoolnix-gui
journald_cursor: s=59d8d98d004842418a2c220f98350001;i=26bed;b=28541b41476f47a7a3f2d07e764cf096;m=17a73e6cf;t=5ee8a277efe26;x=a9d342b69812cb16
kernel:         6.0.9-300.fc37.x86_64
rootdir:        /
runlevel:       N 5
type:           CCpp
uid:            1000

Truncated backtrace:
Thread no. 1 (10 frames)
 #4 qAbort at /usr/src/debug/qt6-qtbase-6.4.1-1.fc37.x86_64/src/corelib/global/qglobal.cpp:3369
 #5 qt_message_fatal at /usr/src/debug/qt6-qtbase-6.4.1-1.fc37.x86_64/src/corelib/global/qlogging.cpp:1916
 #6 QMessageLogger::fatal at /usr/src/debug/qt6-qtbase-6.4.1-1.fc37.x86_64/src/corelib/global/qlogging.cpp:850
 #7 QDummyIntegration::QDummyIntegration at /usr/src/debug/qt6-qtmultimedia-6.4.1-1.fc37.x86_64/src/multimedia/platform/qplatformmediaintegration.cpp:22
 #8 QPlatformMediaIntegration::instance at /usr/src/debug/qt6-qtmultimedia-6.4.1-1.fc37.x86_64/src/multimedia/platform/qplatformmediaintegration.cpp:84
 #9 QMediaPlayer::QMediaPlayer at /usr/src/debug/qt6-qtmultimedia-6.4.1-1.fc37.x86_64/src/multimedia/playback/qmediaplayer.cpp:236
 #10 mtx::gui::Util::MediaPlayerPrivate::MediaPlayerPrivate at src/mkvtoolnix-gui/util/media_player.cpp:47
 #11 mtx::gui::Util::MediaPlayer::MediaPlayer at src/mkvtoolnix-gui/util/media_player.cpp:60
 #12 mtx::gui::App::setupMediaPlayer at src/mkvtoolnix-gui/app.cpp:211
 #13 mtx::gui::App::mediaPlayer at /usr/include/qt6/QtCore/qcoreapplication.h:122

Comment 1 Saravanan 2022-11-28 17:01:03 UTC
Created attachment 1928051 [details]
File: backtrace

Comment 2 Saravanan 2022-11-28 17:01:07 UTC
Created attachment 1928052 [details]
File: core_backtrace

Comment 3 Saravanan 2022-11-28 17:01:09 UTC
Created attachment 1928053 [details]
File: cpuinfo

Comment 4 Saravanan 2022-11-28 17:01:11 UTC
Created attachment 1928054 [details]
File: dso_list

Comment 5 Saravanan 2022-11-28 17:01:13 UTC
Created attachment 1928055 [details]
File: environ

Comment 6 Saravanan 2022-11-28 17:01:14 UTC
Created attachment 1928056 [details]
File: limits

Comment 7 Saravanan 2022-11-28 17:01:16 UTC
Created attachment 1928057 [details]
File: maps

Comment 8 Saravanan 2022-11-28 17:01:18 UTC
Created attachment 1928058 [details]
File: mountinfo

Comment 9 Saravanan 2022-11-28 17:01:20 UTC
Created attachment 1928059 [details]
File: open_fds

Comment 10 Saravanan 2022-11-28 17:01:23 UTC
Created attachment 1928060 [details]
File: proc_pid_status

Comment 11 Saravanan 2022-11-28 17:01:25 UTC
Created attachment 1928061 [details]
File: var_log_messages

Comment 12 Moritz Bunkus 2022-11-30 14:46:49 UTC
The issue is that the `qt6-qtmultimedia` package in version 6.4.1 was compiled without support for any of the supported audio backends. Here's a slightly shorter version of what I wrote over on the MKVToolNix issue tracker (issue https://gitlab.com/mbunkus/mkvtoolnix/-/issues/3448):

The error message appears when the Qt multimedia library wasn't compiled with any of the supported backends (gstreamer, PulseAudio, ALSA, WMF on Windows…). This should obviously not be the case on a Linux distribution.
I just gave this a try with a brand new VM:

* downloaded the Fedora 37 Desktop ISO
* booted it, installed it to the hard disk with default options
* rebooted into the installation, set up my user
* logged in
* installed my repository with sudo rpm -Uhv https://mkvtoolnix.download/fedora/bunkus-org-repo-2-4.noarch.rpm as described here
* installed MKVToolNix v72 with "sudo dnf install mkvtoolnix-gui" (at this point a couple of extra packages were installed, among them qt6-qtmultimedia)
* started mkvtoolnix-gui, and it came up just fine

At this point the installed versions of the Qt6 libraries are:

adwaita-qt6-1.4.2-1.fc37.x86_64
libadwaita-qt6-1.4.2-1.fc37.x86_64
qgnomeplatform-qt6-0.9.0-2.fc37.x86_64
qt6-qtbase-6.3.1-4.fc37.x86_64
qt6-qtbase-common-6.3.1-4.fc37.noarch
qt6-qtbase-gui-6.3.1-4.fc37.x86_64
qt6-qtdeclarative-6.3.1-2.fc37.x86_64
qt6-qtmultimedia-6.3.1-2.fc37.x86_64
qt6-qtsvg-6.3.1-2.fc37.x86_64
qt6-qtwayland-6.3.1-4.fc37.x86_64


So we have no crash with 6.3.1.
However, Qt 6.4.1 is available in the "updates" repo, which is enabled by default. So I updated everything with sudo dnf upgrade. Afterwards the library versions were at:

qt6-qtbase-common-6.4.1-1.fc37.noarch
qt6-qtbase-gui-6.4.1-1.fc37.x86_64
qt6-qtdeclarative-6.4.1-1.fc37.x86_64
qt6-qtwayland-6.4.1-1.fc37.x86_64
qt6-qtbase-6.4.1-1.fc37.x86_64
qt6-qtsvg-6.4.1-1.fc37.x86_64
qt6-qtmultimedia-6.4.1-1.fc37.x86_64


Now I do get a crash with 6.4.1.

Downgrading to 6.3.1 with "sudo dnf install $( grep '^qt' libs-before.txt | sed -Ee 's/.[^.]+$//' )" immediately fixes the issue: the GUI starts again just fine. Also:

[mosu@fedora ~]$ ldd /usr/lib64/libQt6Multimedia.so.6.3.1|grep strea
        libgstreamer-1.0.so.0 => /lib64/libgstreamer-1.0.so.0 (0x00007f54fbadb000)
[mosu@fedora ~]$ sudo dnf upgrade
…content cut…
[mosu@fedora ~]$ ldd /usr/lib64/libQt6Multimedia.so.6.4.1 |grep stream
[mosu@fedora ~]$

Version 6.4.1 is indeed not compiled against gstreamer anymore.

This affects both the package provided by Fedora 37 itself (v71.1.0) & the one from my own repository (72.0.0).

Comment 13 Doncho Gunchev 2022-12-06 19:32:52 UTC
Similar problem has been detected:

Just run the app

reporter:       libreport-2.17.4
backtrace_rating: 4
cgroup:         0::/user.slice/user-1000.slice/user/app.slice/app-org.kde.konsole-c7f91e50297547bbaa32ebb2bf65cecb.scope
cmdline:        mkvtoolnix-gui
crash_function: qAbort
executable:     /usr/bin/mkvtoolnix-gui
journald_cursor: s=8891d0f8535148a8b155067c370b4c80;i=1b38;b=ae5341260f784d238f186df9c76330e9;m=73c2f71d5;t=5ef2ce16e4bd4;x=394a2af3a1ab9cc7
kernel:         6.0.11-300.fc37.x86_64
package:        mkvtoolnix-gui-71.1.0-1.fc37
reason:         mkvtoolnix-gui killed by SIGABRT
rootdir:        /
runlevel:       N 5
type:           CCpp
uid:            1000

Comment 14 Doncho Gunchev 2022-12-06 21:27:24 UTC
(In reply to Moritz Bunkus from comment #12)
> The issue is that the `qt6-qtmultimedia` package in version 6.4.1 was
> compiled without support for any of the supported audio backends. Here's a
> slightly shorter version of what I wrote over on the MKVToolNix issue
> tracker (issue https://gitlab.com/mbunkus/mkvtoolnix/-/issues/3448):

this gave me the idea:

$ dnf downgrade qt6\*
...
Downgraded:
  qgnomeplatform-qt6-0.9.0-2.fc37.x86_64           qt6-qt5compat-6.3.1-3.fc37.x86_64               qt6-qtbase-6.3.1-4.fc37.x86_64                 
  qt6-qtbase-common-6.3.1-4.fc37.noarch            qt6-qtbase-gui-6.3.1-4.fc37.x86_64              qt6-qtdeclarative-6.3.1-2.fc37.x86_64          
  qt6-qtmultimedia-6.3.1-2.fc37.x86_64             qt6-qtshadertools-6.3.1-2.fc37.x86_64           qt6-qtsvg-6.3.1-2.fc37.x86_64                  
  qt6-qtwayland-6.3.1-4.fc37.x86_64               

and mkvtoolnix-gui works again.

and
$ ldd /usr/lib64/libQt6Multimedia.so.6.* |grep stream
        libgstreamer-1.0.so.0 => /lib64/libgstreamer-1.0.so.0 (0x00007fe3af164000)

Comment 15 Moritz Bunkus 2022-12-06 21:31:11 UTC
Will be resolved once the update from 2150231 hits the "update" repo.