Bug 85889 - juk wouldn't start. the konsole reports "communication problem with juk"
Summary: juk wouldn't start. the konsole reports "communication problem with juk"
Status: RESOLVED NOT A BUG
Alias: None
Product: juk
Classification: Applications
Component: general (show other bugs)
Version: unspecified
Platform: Gentoo Packages Linux
: NOR crash
Target Milestone: ---
Assignee: Scott Wheeler
URL:
Keywords:
: 87881 90411 98653 (view as bug list)
Depends on:
Blocks:
 
Reported: 2004-07-24 21:26 UTC by Vlad Vasiliu
Modified: 2006-04-18 04:26 UTC (History)
4 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
Perl script to find JuK libraries using an incompatible standard C++ library. (1.86 KB, application/x-perl)
2004-10-05 02:11 UTC, Michael Pyne
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Vlad Vasiliu 2004-07-24 21:26:11 UTC
Version:            (using KDE KDE 3.2.92)
Installed from:    Gentoo Packages
Compiler:          gcc 3.4.1-r1 (distributed with gentoo) compiled used several use flags, and the "-O2 -mtune=athlon64" CFLAGS and CXXFLAGS
OS:                Linux

When I try running juk, it wouldn't start up. I tried using a terminal to check it's error message. it showed this: "juk: ERROR: Communication problem with juk, it probably crashed. KCrash: Application 'juk' crashing...". I also retrieved the KDE Crash Handler's Backtrace: 

Using host libthread_db library "/lib/libthread_db.so.1".
[KCrash handler]
#4  0x0000002a9a4ca5b2 in TagLib::String::String(TagLib::String const&) ()
   from /usr/lib/libtag.so.1
#5  0x0000000000457b65 in TagLib::List<TagLib::String>::detach() ()
#6  0x0000000000457b99 in TagLib::List<TagLib::String>::begin() ()
#7  0x0000000000474a61 in KPassivePopup::metaObject() const ()
#8  0x0000000000474d2a in KPassivePopup::metaObject() const ()
#9  0x0000000000465919 in QDataStream& operator>><int>(QDataStream&, QValueList<int>&) ()
#10 0x00000000004661ac in QDataStream& operator>><int>(QDataStream&, QValueList<int>&) ()
#11 0x000000000043dbe8 in QMap<QChar, QString>::insert(QChar const&, QString const&, bool) ()
#12 0x000000000043ff87 in QMap<QChar, QString>::insert(QChar const&, QString const&, bool) ()
#13 0x0000000000443575 in QValueList<KURL>::detachInternal() ()
#14 0x0000002a9aa7a8e0 in __libc_start_main () from /lib/libc.so.6
#15 0x00000000004285ea in ?? ()
Comment 1 Michael Pyne 2004-07-25 01:49:31 UTC
Please re-emerge kdemultimedia with debugging information enabled in your CXXFLAGS (the -g flag).

The backtrace is rather useless at this point, unfortunately.
Comment 2 Vlad Vasiliu 2004-07-25 12:11:43 UTC
On Sunday 25 July 2004 01:49, Michael Pyne wrote:
> ------- You are receiving this mail because: -------
> You reported the bug, or are watching the reporter.
>
> http://bugs.kde.org/show_bug.cgi?id=85889
>
>
>
>
> ------- Additional Comments From michael.pyne kdemail net  2004-07-25 01:49
> ------- Please re-emerge kdemultimedia with debugging information enabled
> in your CXXFLAGS (the -g flag).
>
> The backtrace is rather useless at this point, unfortunately.
I enabled the debugging flag in the CXXFLAGS, reemerged kdemultimedia, but no 
new information appears.

Comment 3 Michael Pyne 2004-07-26 01:54:49 UTC
Can you try running the juk from gdb?

$ gdb `which juk`
(blah stuff will appear)
(gdb) run --nofork
(...wait for the crash...)
(gdb) bt
(... gdb will print out a backtrace, please include that)
Comment 4 Vlad Vasiliu 2004-07-26 11:08:44 UTC
ok, here's the output:

(gdb) run --nofork
Starting program: /usr/kde/3.3/bin/juk --nofork
warning: Unable to find dynamic linker breakpoint function.
GDB will be unable to debug shared library initializers
and track explicitly loaded dynamic code.
warning: shared library handler failed to enable breakpoint

Program received signal SIGSEGV, Segmentation fault.
0x0000002a9a4cb5b2 in ?? ()


(gdb) bt
#0  0x0000002a9a4cb5b2 in ?? ()
#1  0x0000000000457b05 in TagLib::List<TagLib::String>::detach() ()
#2  0x0000000000457b39 in TagLib::List<TagLib::String>::begin() ()
#3  0x0000000000474a01 in KPassivePopup::metaObject() const ()
#4  0x0000000000474cca in KPassivePopup::metaObject() const ()
#5  0x00000000004658b9 in QDataStream& operator>><int>(QDataStream&, 
QValueList<int>&) ()
#6  0x000000000046614c in QDataStream& operator>><int>(QDataStream&, 
QValueList<int>&) ()
#7  0x000000000043db88 in QMap<QChar, QString>::insert(QChar const&, QString 
const&, bool) ()
#8  0x000000000043ff27 in QMap<QChar, QString>::insert(QChar const&, QString 
const&, bool) ()
#9  0x0000000000443515 in QValueList<KURL>::detachInternal() ()
#10 0x0000002a9aa7b8e0 in ?? ()
#11 0x0000007fbffff1e8 in ?? ()

Comment 5 Michael Pyne 2004-08-24 02:00:13 UTC
Hmm, this is weird, bug 87881 might be a duplicate of this.  If so, that means the bug is probably not a 64-bit issue.
Comment 6 Michael Pyne 2004-08-24 02:09:37 UTC
I have had problems with JuK after upgrading GCC to version 3.4 from 3.3.  Could you please post the output of the command: ldd `which juk`  Note that the backquotes are significant in that command.
Comment 7 Vlad Vasiliu 2004-08-24 11:42:43 UTC
Here it is:

On Tuesday 24 August 2004 02:00, Michael Pyne wrote:
> ------- You are receiving this mail because: -------
> You reported the bug, or are watching the reporter.
>
> http://bugs.kde.org/show_bug.cgi?id=85889
>
>
>
>
> ------- Additional Comments From michael.pyne kdemail net  2004-08-24 02:00
> ------- Hmm, this is weird, bug 87881 might be a duplicate of this.  If so,
> that means the bug is probably not a 64-bit issue.

Comment 8 digirain 2004-10-03 17:35:50 UTC
Im having the same problem. Here is the output of "ldd `which juk`" from my machine:

ldd `which juk`
        linux-gate.so.1 =>  (0xffffe000)
        libtunepimp.so.2 => /usr/lib/libtunepimp.so.2 (0x40033000)
        libFLAC.so.6 => /usr/lib/libFLAC.so.6 (0x40099000)
        libmusicbrainz.so.4 => /usr/lib/libmusicbrainz.so.4 (0x400d6000)
        libartskde.so.1 => /usr/kde/3.3/lib/libartskde.so.1 (0x40102000)
        libqtmcop.so.1 => /usr/kde/3.3/lib/libqtmcop.so.1 (0x4015f000)
        libsoundserver_idl.so.1 => /usr/kde/3.3/lib/libsoundserver_idl.so.1 (0x40166000)
        libkmedia2_idl.so.1 => /usr/kde/3.3/lib/libkmedia2_idl.so.1 (0x401c8000)
        libartsflow.so.1 => /usr/kde/3.3/lib/libartsflow.so.1 (0x40209000)
        libesd.so.0 => /usr/lib/libesd.so.0 (0x40352000)
        libaudiofile.so.0 => /usr/lib/libaudiofile.so.0 (0x4035b000)
        libasound.so.2 => /usr/lib/libasound.so.2 (0x40382000)
        libvorbisfile.so.3 => /usr/lib/libvorbisfile.so.3 (0x40456000)
        libvorbisenc.so.2 => /usr/lib/libvorbisenc.so.2 (0x4045e000)
        libvorbis.so.0 => /usr/lib/libvorbis.so.0 (0x4055e000)
        libogg.so.0 => /usr/lib/libogg.so.0 (0x40586000)
        libmad.so.0 => /usr/lib/libmad.so.0 (0x4058b000)
        libartsflow_idl.so.1 => /usr/kde/3.3/lib/libartsflow_idl.so.1 (0x405a2000)
        libmcop.so.1 => /usr/kde/3.3/lib/libmcop.so.1 (0x4064d000)
        libgmodule-2.0.so.0 => /usr/lib/libgmodule-2.0.so.0 (0x406fd000)
        libgthread-2.0.so.0 => /usr/lib/libgthread-2.0.so.0 (0x40702000)
        libglib-2.0.so.0 => /usr/lib/libglib-2.0.so.0 (0x40707000)
        libkio.so.4 => /usr/kde/3.3/lib/libkio.so.4 (0x40785000)
        libkdeui.so.4 => /usr/kde/3.3/lib/libkdeui.so.4 (0x40ab2000)
        libkdesu.so.4 => /usr/kde/3.3/lib/libkdesu.so.4 (0x40d76000)
        libkwalletclient.so.1 => /usr/kde/3.3/lib/libkwalletclient.so.1 (0x40d8f000)
        libkdecore.so.4 => /usr/kde/3.3/lib/libkdecore.so.4 (0x40d9f000)
        libDCOP.so.4 => /usr/kde/3.3/lib/libDCOP.so.4 (0x40fde000)
        libresolv.so.2 => /lib/libresolv.so.2 (0x41013000)
        libutil.so.1 => /lib/libutil.so.1 (0x41026000)
        libart_lgpl_2.so.2 => /usr/lib/libart_lgpl_2.so.2 (0x4102a000)
        libidn.so.11 => /usr/lib/libidn.so.11 (0x41040000)
        libkdefx.so.4 => /usr/kde/3.3/lib/libkdefx.so.4 (0x41071000)
        libqt-mt.so.3 => /usr/qt/3/lib/libqt-mt.so.3 (0x4109e000)
        libmng.so.1 => /usr/lib/libmng.so.1 (0x417a5000)
        libjpeg.so.62 => /usr/lib/libjpeg.so.62 (0x41802000)
        libXi.so.6 => /usr/X11R6/lib/libXi.so.6 (0x41823000)
        libXrandr.so.2 => /usr/X11R6/lib/libXrandr.so.2 (0x4182b000)
        libXcursor.so.1 => /usr/X11R6/lib/libXcursor.so.1 (0x41830000)
        libXft.so.2 => /usr/X11R6/lib/libXft.so.2 (0x4183a000)
        libfontconfig.so.1 => /usr/lib/libfontconfig.so.1 (0x4184e000)
        libfreetype.so.6 => /usr/lib/libfreetype.so.6 (0x41879000)
        libexpat.so.0 => /usr/lib/libexpat.so.0 (0x418ee000)
        libdl.so.2 => /lib/libdl.so.2 (0x4191a000)
        libpng.so.3 => /usr/lib/libpng.so.3 (0x4191f000)
        libXext.so.6 => /usr/X11R6/lib/libXext.so.6 (0x41957000)
        libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x41968000)
        libSM.so.6 => /usr/X11R6/lib/libSM.so.6 (0x41a3e000)
        libICE.so.6 => /usr/X11R6/lib/libICE.so.6 (0x41a47000)
        libpthread.so.0 => /lib/libpthread.so.0 (0x41a5e000)
        libXrender.so.1 => /usr/X11R6/lib/libXrender.so.1 (0x41ab3000)
        libfam.so.0 => /usr/lib/libfam.so.0 (0x41abb000)
        libtag.so.1 => /usr/lib/libtag.so.1 (0x41ac4000)
        libstdc++.so.6 => /usr/lib/gcc/i686-pc-linux-gnu/3.4.2/libstdc++.so.6 (0x41b0a000)
        libz.so.1 => /lib/libz.so.1 (0x41bdc000)
        libgcc_s.so.1 => /usr/lib/gcc/i686-pc-linux-gnu/3.4.2/libgcc_s.so.1 (0x41bed000)
        libm.so.6 => /lib/libm.so.6 (0x41bf7000)
        libc.so.6 => /lib/libc.so.6 (0x41c1a000)
        libstdc++.so.5 => /usr/lib/libstdc++-v3/libstdc++.so.5 (0x41d45000)
        /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
        libstdc++-libc6.2-2.so.3 => /usr/lib/libstdc++-libc6.2-2.so.3 (0x41dff000)

I also started having this problem after upgrading one of juk's support libraries using GCC 3.4.x.
Comment 9 digirain 2004-10-03 17:41:56 UTC
^^^^^^^

Forgot to include my machine configuration:

Version:           KDE 3.3.0
Installed from:    Gentoo Packages
Compiler:          gcc 3.4.2
CFLAGS:            CFLAGS="-march=pentium3 -O3 -pipe"
OS:                Linux
Comment 10 Michael Pyne 2004-10-05 02:09:42 UTC
<snip>
libstdc++.so.6 => /usr/lib/gcc/i686-pc-linux-gnu/3.4.2/libstdc++.so.6 (0x41b0a000)
libstdc++.so.5 => /usr/lib/libstdc++-v3/libstdc++.so.5 (0x41d45000) 
</snip>

digirain, this is your problem.  You're linking against two different (and incompatible) C++ standard libraries.  You need to upgrade the libraries that depend on the old C++ standard library (although you should be aware that it may cause incompatibilities with old software that was compiled with the old gcc that used those libraries).  It's also why I asked the reporter to post the output of ldd `which juk`, but I've not heard back about that.

I will attach a script that should find the file names of the affected files.
Comment 11 Michael Pyne 2004-10-05 02:11:50 UTC
Created attachment 7784 [details]
Perl script to find JuK libraries using an incompatible standard C++ library.

You can run this script at the Konsole (perl findproblemlibs.pl) to try and
find out what libraries need to be recompiled to let JuK run without crashing.
Comment 12 Michael Pyne 2004-10-05 02:34:38 UTC
Closing bug as I can't reproduce it, and I very strongly suspect based on the provided information that it is a problem with multiple libstdc++ libraries, thus making it an installation problem, not a juk bug.
Comment 13 Vlad Vasiliu 2004-10-05 15:44:07 UTC
On Tuesday 05 October 2004 02:11, Michael Pyne wrote:
> ------- You are receiving this mail because: -------
> You reported the bug, or are watching the reporter.
>
> http://bugs.kde.org/show_bug.cgi?id=85889
>
>
>
>
> ------- Additional Comments From michael.pyne kdemail net  2004-10-05 02:11
> ------- Created an attachment (id=7784)
>  --> (http://bugs.kde.org/attachment.cgi?id=7784&action=view)
> Perl script to find JuK libraries using an incompatible standard C++
> library.
>
> You can run this script at the Konsole (perl findproblemlibs.pl) to try and
> find out what libraries need to be recompiled to let JuK run without
> crashing.

what if the scripts reports that the libraries seem to be fine and juk still 
refuses to work?
Comment 14 Michael Pyne 2004-10-05 19:49:39 UTC
If that is the case then you should probably re-open the bug as you're probably suffering from a different problem.  I'd still like to see the output of ldd `which juk` though, as your prior comment didn't include any output.

If you ran ldd `which juk` and it actually didn't give any output, you may have managed to compile JuK statically, which I'm pretty sure is not supported.  You can check that by running "file `which juk`" at the command prompt, which will tell you what kind of binary (dynamic or static) that JuK is.  If is is a dynamic library please reopen the bug.
Comment 15 Casen P. 2004-10-21 20:32:48 UTC
I was experiencing the same crashes that the original filer was saying on my Pentium 4 system running Gentoo.  The problem arose immediately after upgrading gcc to 3.4 as previously stated.  I had tried re-emerging the stdc++ libraries and gcc without effect, and had recompiled all of the kdepackages on my system.  After finding this bug, I downloaded the attached perl script and ran it:
~~~~
Looking for libraries that use an incompatible libstdc++
Your libstdc++ appears to be libstdc++.so.6

Library /usr/lib/libtunepimp.so.2 needs updated.
Library /usr/lib/libmusicbrainz.so.4 needs updated.
Library /usr/kde/3.3/lib/libartskde.so.1 needs updated.
Library /usr/kde/3.3/lib/libkio.so.4 needs updated.
Library /usr/lib/libfam.so.0 needs updated.
~~~~

Re-emerging the packages 'musicbrainz', 'tunepimp', and 'fam' resulted in this:

~~~~
JuK's standard C++ dependencies appear to be correct.
~~~~

Running juk now successfully loads the program.  So I can confirm the problem is the stdc++ libraries being out of sync after gcc 3.3 -> 3.4 upgrade, and can also confirm that the perl script is excellent in helping track down the offending libraries and resolve the issue.
Comment 16 Vlad Vasiliu 2004-10-21 20:58:54 UTC
On Thursday 21 October 2004 20:32, Casen P. wrote:
> ------- You are receiving this mail because: -------
> You reported the bug, or are watching the reporter.
>
> http://bugs.kde.org/show_bug.cgi?id=85889
>
>
>
>
> ------- Additional Comments From saoxeen gmail com  2004-10-21 20:32
> ------- I was experiencing the same crashes that the original filer was
> saying on my Pentium 4 system running Gentoo.  The problem arose
> immediately after upgrading gcc to 3.4 as previously stated.  I had tried
> re-emerging the stdc++ libraries and gcc without effect, and had recompiled
> all of the kdepackages on my system.  After finding this bug, I downloaded
> the attached perl script and ran it: ~~~~
> Looking for libraries that use an incompatible libstdc++
> Your libstdc++ appears to be libstdc++.so.6
>
> Library /usr/lib/libtunepimp.so.2 needs updated.
> Library /usr/lib/libmusicbrainz.so.4 needs updated.
> Library /usr/kde/3.3/lib/libartskde.so.1 needs updated.
> Library /usr/kde/3.3/lib/libkio.so.4 needs updated.
> Library /usr/lib/libfam.so.0 needs updated.
> ~~~~
>
> Re-emerging the packages 'musicbrainz', 'tunepimp', and 'fam' resulted in
> this:
>
> ~~~~
> JuK's standard C++ dependencies appear to be correct.
> ~~~~
>
> Running juk now successfully loads the program.  So I can confirm the
> problem is the stdc++ libraries being out of sync after gcc 3.3 -> 3.4
> upgrade, and can also confirm that the perl script is excellent in helping
> track down the offending libraries and resolve the issue.

yes, this makes juk run again. it works on amd64s, too (although I didn't 
think it was an arch-related problem).
Comment 17 Scott Wheeler 2004-10-26 01:17:22 UTC
*** Bug 90411 has been marked as a duplicate of this bug. ***
Comment 18 Scott Wheeler 2004-10-29 17:12:09 UTC
*** Bug 87881 has been marked as a duplicate of this bug. ***
Comment 19 Scott Wheeler 2005-02-18 03:13:28 UTC
*** Bug 98653 has been marked as a duplicate of this bug. ***
Comment 20 benjamin200 2005-02-19 22:58:44 UTC
This workarround works also for me (on amd64 system). JuK runs, perfect!

But I have also problems with the KDE notify soundsystem. I thought that the problem with JuK are in relation to the KDE notify system. If I start-up my computer, login as user, there are no start sound. I recompile 'musicbrainz', 'tunepimp', and 'fam' but the KDE notify sound system doesn't work.

Should I open a new BUG report for this case?


Thanks,
Benjamin
Comment 21 Vlad Vasiliu 2005-02-19 23:01:43 UTC
On Saturday 19 February 2005 22:58, benjamin200 wrote:
> ------- You are receiving this mail because: -------
> You reported the bug, or are watching the reporter.
>
> http://bugs.kde.org/show_bug.cgi?id=85889
>
>
>
>
> ------- Additional Comments From benjamin200 arcor de  2005-02-19 22:58
> ------- This workarround works also for me (on amd64 system). JuK runs,
> perfect!
>
> But I have also problems with the KDE notify soundsystem. I thought that
> the problem with JuK are in relation to the KDE notify system. If I
> start-up my computer, login as user, there are no start sound. I recompile
> 'musicbrainz', 'tunepimp', and 'fam' but the KDE notify sound system
> doesn't work.
>
> Should I open a new BUG report for this case?
>
>
> Thanks,
> Benjamin
I guess so, because i suppose your problem is rather related to the sound 
system, not to juk.
_________________________________________________________________
Do You Yahoo!? -- Une adresse @yahoo.fr gratuite et en fran
Comment 22 Scott Wheeler 2005-02-19 23:03:47 UTC
On Saturday 19 February 2005 22:58, benjamin200 wrote:
> Should I open a new BUG report for this case?

No, you shouldn't be recompiling things you don't understand.  ;-)

You need to recompile aRts still most likely.  Note that these things aren't a 
"work around" or bugs in KDE -- you just messed up your system by upgrading 
the libstdc++ (likely via a GCC upgrade) to an incompatible version without 
recompiling all of the things that use it.

Comment 23 Scott Wheeler 2005-02-19 23:05:10 UTC
Uhm, no -- his problem is related to Gentoo, not to the sound system.  ;-)
Comment 24 Curtis Farnham 2006-04-18 04:26:04 UTC
I had the same Juk problem after upgrading to KDE 3.5.2 and discovered two ways of solving it.  One way is to recompile Juk with the 'gstreamer' USE flag.  Or, make sure 3.5.2's kdemultimedia-arts is installed before compiling Juk.

Not sure what to make of it.  It would seem that Juk (without gstreamer) has a runtime dependency on kdemultimedia-arts, or a hard dependency that's somehow not detected during compilation.  But the strange thing is that I tried to reproduce the problem by uninstalling kdemultimedia-arts after compiling Juk with it, and Juk kept on working.  I even restarted my KDE session and still couldn't reproduce the problem.