Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 684208 - sci-misc/mendeleydesktop-1.19.3 crashes when opening pdf files
Summary: sci-misc/mendeleydesktop-1.19.3 crashes when opening pdf files
Status: RESOLVED OBSOLETE
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: x86 Linux
: Normal normal (vote)
Assignee: No maintainer - Look at https://wiki.gentoo.org/wiki/Project:Proxy_Maintainers if you want to take care of it
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2019-04-23 17:49 UTC by Bogdan Petre
Modified: 2020-01-22 01:43 UTC (History)
3 users (show)

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


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Bogdan Petre 2019-04-23 17:49:57 UTC
Note: temporary workaround at the end

It seems that sci-misc/mendeleydesktop-1.19.2 and 1.19.3 (and possibly others) are not compatible with QT 5.11. This results in Mendeley crashing when attempting to view PDFs with the following backtrace,

QApplication: invalid style override passed, ignoring it.
[3637:3681:0423/102727.747228:ERROR:nss_util.cc(727)] After loading Root Certs, loaded==false: NSS error code: -8018
Received signal 11 SEGV_MAPERR 000000000020
#0 0x7fca40bc88be <unknown>
#1 0x7fca40bc89d0 <unknown>
#2 0x7fca40bc9007 <unknown>
#3 0x7fca46138490 <unknown>
#4 0x7fca3e22fe85 <unknown>
#5 0x7fca3e22ffa3 <unknown>
#6 0x7fca3e1bcf07 QWidgetPrivate::inheritStyle()
#7 0x7fca3e1bcc4c QWidgetPrivate::setStyle_helper()
#8 0x7fca3e1bcea8 QWidgetPrivate::inheritStyle()
#9 0x7fca3e1bcc4c QWidgetPrivate::setStyle_helper()
#10 0x7fca3e1bcea8 QWidgetPrivate::inheritStyle()
#11 0x7fca3e1bcc4c QWidgetPrivate::setStyle_helper()
#12 0x7fca3e1bcea8 QWidgetPrivate::inheritStyle()
#13 0x7fca3e1bcc4c QWidgetPrivate::setStyle_helper()
#14 0x7fca3e1bcea8 QWidgetPrivate::inheritStyle()
#15 0x7fca3e1bcc4c QWidgetPrivate::setStyle_helper()
#16 0x7fca3e1bcea8 QWidgetPrivate::inheritStyle()
#17 0x7fca3e1cd89e QWidget::setParent()
#18 0x7fca3e32aa30 <unknown>
#19 0x000000870e67 PdfViewerTab::stealDetailsPane()
#20 0x00000084eacc MainWindowTabViewController::handleTabChange()
#21 0x00000075f6fb <unknown>
#22 0x7fca3d4fb22e QMetaObject::activate()
#23 0x7fca3e32daae QTabBar::currentChanged()
#24 0x7fca3e33208d QTabBar::setCurrentIndex()
#25 0x00000082fe13 MainWindow::openViewerTab()
#26 0x000000760f4c <unknown>
#27 0x7fca3d4fb22e QMetaObject::activate()
#28 0x000000b2526a DocumentFileFetcher::fileForInternalViewer()
#29 0x000000a71eb4 DocumentFileFetcher::openLocalFile()
#30 0x000000a7293c DocumentFileFetcher::open()
#31 0x0000008248cb MainWindow::openDocumentFile()
#32 0x000000824978 MainWindow::openDocumentFile()
#33 0x000000760011 <unknown>
#34 0x7fca3d4fbdea QObject::event()
#35 0x7fca3e1cc99b QWidget::event()
#36 0x7fca3e2d2ad4 QMainWindow::event()
#37 0x7fca3e18dfb1 QApplicationPrivate::notify_helper()
#38 0x7fca3e195630 QApplication::notify()
#39 0x7fca3d4d3cd2 QCoreApplication::notifyInternal2()
#40 0x7fca3d4d6ddb QCoreApplicationPrivate::sendPostedEvents()
#41 0x7fca3d522cf3 <unknown>
#42 0x7fca3af9e49e g_main_context_dispatch
#43 0x7fca3af9e738 <unknown>
#44 0x7fca3af9e7cc g_main_context_iteration
#45 0x7fca3d522a93 QEventDispatcherGlib::processEvents()
#46 0x7fca10d25f41 <unknown>
#47 0x7fca3d4d2cab QEventLoop::exec()
#48 0x7fca3d4dab12 QCoreApplication::exec()
#49 0x000000f745fc MendeleyApplication::execute()
#50 0x00000073f154 main
#51 0x7fca3c54b79b __libc_start_main
#52 0x0000007421e9 _start
  r8: 00000000ffffffff  r9: 0000000000000000 r10: 00000000ffffffff r11: 0000000000000000
 r12: 00007ffd36ca6130 r13: 0000000002b2dc48 r14: 0000000000000208 r15: 000000000289f190
  di: 0000000000000000  si: 0000000000000000  bp: 0000000002b2dc08  bx: 00000000057840b0
  dx: 00000000058de600  ax: 0000000000000000  cx: 0000000000000000  sp: 00007ffd36ca6130
  ip: 00007fca3e22fe85 efl: 0000000000010202 cgf: 002b000000000033 erf: 0000000000000004
 trp: 000000000000000e msk: 0000000000000000 cr2: 0000000000000020
[end of stack trace]
Calling _exit(1). Core file will not be generated.


emerge --info: 

Portage 2.3.62 (python 3.6.5-final-0, default/linux/amd64/17.0/desktop/gnome/systemd, gcc-8.2.0, glibc-2.28-r6, 4.19.27-gentoo-r1 x86_64)
=================================================================
System uname: Linux-4.19.27-gentoo-r1-x86_64-Intel-R-_Core-TM-_i7-3520M_CPU_@_2.90GHz-with-gentoo-2.6
KiB Mem:    12057916 total,   2245196 free
KiB Swap:          0 total,         0 free
Timestamp of repository gentoo: Mon, 22 Apr 2019 23:45:01 +0000
Head commit of repository gentoo: 941f4d8a3719f505825a1baed1caae4eeea4d045
Head commit of repository neuro: 9728f0b08188a0c4c684f6d36665629b69c2899d

sh bash 4.4_p23-r1
ld GNU ld (Gentoo 2.30 p5) 2.30.0
app-shells/bash:          4.4_p23-r1::gentoo
dev-java/java-config:     2.2.0-r4::gentoo
dev-lang/perl:            5.26.2::gentoo
dev-lang/python:          2.7.15::gentoo, 3.5.5::gentoo, 3.6.5::gentoo
dev-util/cmake:           3.9.6::gentoo
dev-util/pkgconfig:       0.29.2::gentoo
sys-apps/baselayout:      2.6-r1::gentoo
sys-apps/sandbox:         2.13::gentoo
sys-devel/autoconf:       2.13-r1::gentoo, 2.69-r4::gentoo
sys-devel/automake:       1.11.6-r3::gentoo, 1.13.4-r2::gentoo, 1.16.1-r1::gentoo
sys-devel/binutils:       2.30-r4::gentoo, 2.31.1-r4::gentoo
sys-devel/gcc:            8.2.0-r6::gentoo
sys-devel/gcc-config:     2.0::gentoo
sys-devel/libtool:        2.4.6-r3::gentoo
sys-devel/make:           4.2.1-r4::gentoo
sys-kernel/linux-headers: 4.14-r1::gentoo (virtual/os-headers)
sys-libs/glibc:           2.28-r6::gentoo
Repositories:

gentoo
    location: /usr/portage
    sync-type: rsync
    sync-uri: rsync://rsync.namerica.gentoo.org/gentoo-portage
    priority: -1000
    sync-rsync-verify-max-age: 24
    sync-rsync-verify-metamanifest: yes
    sync-rsync-verify-jobs: 1
    sync-rsync-extra-opts: 

var-lib-layman-sunrise
    location: /var/lib/layman
    masters: gentoo
    priority: 0

x-portage
    location: /usr/local/portage
    masters: gentoo
    priority: 1

ago
    location: /var/lib/layman/ago
    masters: gentoo
    priority: 50

elementary
    location: /var/lib/layman/elementary
    masters: gentoo
    priority: 50

haarp
    location: /var/lib/layman/haarp
    masters: gentoo
    priority: 50

haskell
    location: /var/lib/layman/haskell
    masters: gentoo
    priority: 50

imaging
    location: /var/lib/layman/imaging
    masters: gentoo
    priority: 50

sabayon
    location: /var/lib/layman/sabayon
    masters: gentoo
    priority: 50

swegener
    location: /var/lib/layman/swegener
    masters: gentoo
    priority: 50

neuro
    location: /usr/local/portage/neurogentoo
    sync-type: git
    sync-uri: https://github.com/TheChymera/neurogentoo.git
    masters: gentoo
    priority: 8888

ACCEPT_KEYWORDS="amd64"
ACCEPT_LICENSE="* -@EULA"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=native -O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/gnupg/qualified.txt /usr/share/themes/oxygen-gtk/gtk-2.0"
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 /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-march=native -O2 -pipe"
DISTDIR="/usr/portage/distfiles"
ENV_UNSET="DBUS_SESSION_BUS_ADDRESS DISPLAY GOBIN PERL5LIB PERL5OPT PERLPREFIX PERL_CORE PERL_MB_OPT PERL_MM_OPT XAUTHORITY XDG_CACHE_HOME XDG_CONFIG_HOME XDG_DATA_HOME XDG_RUNTIME_DIR"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles ipc-sandbox merge-sync multilib-strict network-sandbox news parallel-fetch pid-sandbox preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans unprivileged userfetch userpriv usersandbox usersync xattr"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="ftp://ftp.ussg.iu.edu/pub/linux/gentoo http://cudlug.cudenver.edu/gentoo/ ftp://gentoo.cites.uiuc.edu/pub/gentoo/ "
LANG="en_US.utf8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
LINGUAS="en en_US ro"
MAKEOPTS="-j3"
PKGDIR="/usr/portage/packages"
PORTAGE_BINHOST="http://tinderbox.dev.gentoo.org/default-linux/x86/All/"
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"
USE="X a52 aac aalib acl acpi alsa amd64 aoss apache2 asf atm automount avahi avi berkdb bindlist bluetooth bmp bzip2 cairo cdda cdio cdr cli colord crypt cups cxx dbus dri dts dvd dvdr dvdread eds emboss encode evo exif faac fam ffmpeg flac fortran gdbm gif glamor gnome gnome-keyring gnome-online-accounts gnutls gpm gstreamer gtk iconv introspection jpeg jpeg2k lame laptop lcms libnotify libsecret libtirpc live lm_sensors mad matplotlib matroska midi mng mono mp3 mp4 mpeg multilib nautilus ncurses networkmanager nls nptl ntpl ntplonly ogg opengl openmp openssl pam pango pcre pdf png policykit ppds pulseaudio python qt5 raw readline real samba sdl seccomp spell ssl startup-notification svg symlink systemd tcpd theora threads tiff tracker truetype udev udisks unicode upower usb vcd vlm vorbis wmf wxwidgets x264 xattr xcb xcomposite xinerama xml xorg xv xvid xvmc zlib" ABI_X86="64 32" ALSA_CARDS="hda-intel" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache 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 mmx mmxext popcnt sse sse2 sse3 sse4_1 sse4_2 ssse3" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock isync itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 timing tsip tripmate tnt ublox ubx" INPUT_DEVICES="keyboard mouse evdev synaptics" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" NETBEANS_MODULES="apisupport cnd groovy gsf harness ide identity j2ee java mobility nb php profiler soa visualweb webcommon websvccommon xml" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-6 php7-1" POSTGRES_TARGETS="postgres9_5 postgres10" PYTHON_SINGLE_TARGET="python3_6" PYTHON_TARGETS="python2_7 python3_6" RUBY_TARGETS="ruby24" USERLAND="GNU" VIDEO_CARDS="intel nvidia" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset:  CC, CPPFLAGS, CTARGET, CXX, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS


A solution is to use the QT binaries bundled with mendeley. The following steps resolved the issue for me.

1) extract mendeleydesktop-1.19.3-linux_x86_64.tar.bz2 tarball that you manually downloaded from the mendeley site and put into /usr/portage/distfiles when you first emerged mendeleydesktop, and copy bundled qt libraries to your install directory. Typically this will be something like this
mkdir /opt/mendeleydesktop/lib
cp -r <tarball path>/lib/qt /opt/mendeleydesktop/lib/

2) change QT bundled plugins path in launch binary
nano /opt/mendeleydesktop/bin/mendeleydesktop
change line 85 like so:
       # results['MENDELEY_BUNDLED_QT_PLUGIN'] = "/usr/lib64/qt5/plugins"
        results['MENDELEY_BUNDLED_QT_PLUGIN'] = results['MENDELEY_BASE'] + "/plugins/qt/plugins/"

3) copy qt plugins to install dir. e.g.
mkdir -p /opt/mendeleydesktop/plugins/qt/
cp -r <tarball path>/lib/mendeleydesktop/plugins /opt/mendeleydesktop/plugins/qt/

4) (not sure if this step is necessary) copy libexec files
cp -r <tarball dir>/lib/mendeleydesktop/libexec/resources <tarball dir>/lib/mendeleydesktop/libexec/translations /opt/mendeleydesktop/lib64/mendeleydesktop/libexec/

5) copy qt.conf to libexec
cp <tarball dir>/lib/mendeleydesktop/libexec/qt.conf /opt/mendeleydesktop/lib64/mendeleydesktop/libexec/

No guarantees this won't break other features, but until a release of mendeleydesktop is available that's built against the current gentoo QT version, this will at least make mendeley functional again.
Comment 1 Bogdan Petre 2019-04-23 17:52:11 UTC
re: step 2, edit launch script, not launch "binary"
Comment 2 Bogdan Petre 2019-04-23 17:56:26 UTC
tarball can be obtained here:

https://desktop-download.mendeley.com/download/linux/mendeleydesktop-1.19.3-linux-x86_64.tar.bz2

Link isn't listed on the mendeley website anymore as far as I can tell (they've moved on to 1.19.4, which likely suffers from the same bug as 1.19.3 and 1.19.2), but it's still on their servers as of today.
Comment 3 Andreas Sturmlechner gentoo-dev 2019-04-29 00:13:20 UTC
Please test 1.19.4.
Comment 4 Bogdan Petre 2019-09-19 13:58:19 UTC
(In reply to Andreas Sturmlechner from comment #3)
> Please test 1.19.4.

I've tested 1.19.4 now and it's still a problem. The same fix solves it.
Comment 5 Pacho Ramos gentoo-dev 2020-01-21 22:49:38 UTC
I cannot reproduce with current systems... I can add PDFs and they are opened properly :/
Comment 6 Bogdan Petre 2020-01-22 01:43:59 UTC
This bug pertained to an incompatibility between QT 5.11 and Mendeley 1.19.3 and 1.19.4. QT has seen a version bump in gentoo since these bugs were identified and is now at 5.13. I believe the version bundled with mendeley is 5.12, so it makes sense that updating to a newer version of QT would fix the problem.

I've done a world update and I no longer have this problem anymore either. I've marked the bug obsolete.