After emerging arts-1.3.1, whenever artsd in started, it crashe imidiately. This is the console output: lightstart roie # /usr/kde/3.3/bin/artsd unix_connect: can't connect to server (unix:/tmp/mcop-root/lightstart-42dc-416e5bb7) ALSA lib pcm_hw.c:549:(snd_pcm_hw_start) SNDRV_PCM_IOCTL_START failed: Broken pipe ALSA lib pcm_hw.c:549:(snd_pcm_hw_start) SNDRV_PCM_IOCTL_START failed: Broken pipe loading extension from '/usr/kde/3.3/lib/libartsmidi.la' failed: /usr/kde/3.3/lib/libartsmidi.so.0: undefined symbol: _ZTv0_n32_N4Arts14StdSynthModule11autoSuspendEv MCOP ObjectManager: Could not load extension libartsmidi.la. MCOP ObjectManager: can't find implementation for Arts::MidiManager. loading extension from '/usr/kde/3.3/lib/libartsbuilder.la' failed: /usr/kde/3.3/lib/libartsbuilder.so.0: undefined symbol: _ZTv0_n32_N4Arts16SynthModule_stub11autoSuspendEv MCOP ObjectManager: Could not load extension libartsbuilder.la. MCOP ObjectManager: can't find implementation for Arts::ArtsBuilderLoader. Segmentation fault Reproducible: Always Steps to Reproduce: 1.emerge arts-1.3.1 2.startkde or /usr/kde/3.3/bin/artsd 3. Actual Results: crash
and this is the backtrace from KCrash: Using host libthread_db library "/lib/libthread_db.so.1". [Thread debugging using libthread_db enabled] [New Thread 16384 (LWP 439)] [KCrash handler] #26 0x403d3598 in Arts::Loader_base::_create () from /usr/kde/3.3/lib/libmcop.so.1 #27 0xbffff070 in ?? () #28 0x00000000 in ?? () #29 0x08056323 in ?? () #30 0xbffff070 in ?? () #31 0xbffff170 in ?? () #32 0xbffff180 in ?? () #33 0x4043641c in ?? () from /usr/kde/3.3/lib/libmcop.so.1 #34 0xbfffeefc in ?? () #35 0x080a4a00 in ?? () #36 0x00000000 in ?? () #37 0x080a46b8 in ?? () #38 0x00000028 in ?? () #39 0x09c24486 in ?? () #40 0xbfffef70 in ?? () #41 0x400173b0 in _r_debug () #42 0x0804d45c in ?? () #43 0x3169bff9 in ?? () #44 0x40731620 in ?? () from /lib/libc.so.6 #45 0x4001d510 in ?? () from /usr/kde/3.3/lib/libsoundserver_idl.so.1 #46 0x40017b40 in ?? () #47 0x0000000e in ?? () #48 0xbfffef38 in ?? () #49 0x405cad8e in std::string::assign () from /usr/lib/gcc/i686-pc-linux-gnu/3.4.2/libstdc++.so.6 #50 0x00000018 in ?? () #51 0x40749980 in __after_morecore_hook () from /lib/libc.so.6 #52 0x40747ff8 in ?? () from /lib/libc.so.6 #53 0x080a49ec in ?? () #54 0x40749980 in __after_morecore_hook () from /lib/libc.so.6 #55 0xbffff1a8 in ?? () #56 0x080dc140 in ?? () #57 0x405ca62b in std::string::_Rep::_M_destroy () from /usr/lib/gcc/i686-pc-linux-gnu/3.4.2/libstdc++.so.6
Can you post the output of # ldd /usr/kde/3.3/lib/libmcop.so and # ldd /usr/kde/3.3/lib/libartsmidi.so Did you switch from gcc 3.3.x to 3.4.x recently?
yes
roie@lightstart ~ $ ldd /usr/kde/3.3/lib/libmcop.so libgmodule-2.0.so.0 => /usr/lib/libgmodule-2.0.so.0 (0x400c3000) libgthread-2.0.so.0 => /usr/lib/libgthread-2.0.so.0 (0x400c8000) libpthread.so.0 => /lib/libpthread.so.0 (0x400cd000) libglib-2.0.so.0 => /usr/lib/libglib-2.0.so.0 (0x4011f000) libdl.so.2 => /lib/libdl.so.2 (0x4019c000) libstdc++.so.6 => /usr/lib/gcc/i686-pc-linux-gnu/3.4.2/libstdc++.so.6 (0x401a0000) libm.so.6 => /lib/libm.so.6 (0x4026b000) libc.so.6 => /lib/libc.so.6 (0x4028e000) libgcc_s.so.1 => /usr/lib/gcc/i686-pc-linux-gnu/3.4.2/libgcc_s.so.1 (0x4039a000) /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x80000000) roie@lightstart ~ $ ldd /usr/kde/3.3/lib/libartsmidi.so libartsmidi_idl.so.0 => /usr/kde/3.3/lib/libartsmidi_idl.so.0 (0x40037000) libartsflow.so.1 => /usr/kde/3.3/lib/libartsflow.so.1 (0x40081000) libartsflow_idl.so.1 => /usr/kde/3.3/lib/libartsflow_idl.so.1 (0x401cc000) libaudiofile.so.0 => /usr/lib/libaudiofile.so.0 (0x4028a000) libmcop.so.1 => /usr/kde/3.3/lib/libmcop.so.1 (0x402b1000) libmad.so.0 => /usr/lib/libmad.so.0 (0x4035f000) libgmodule-2.0.so.0 => /usr/lib/libgmodule-2.0.so.0 (0x40375000) libgthread-2.0.so.0 => /usr/lib/libgthread-2.0.so.0 (0x4037a000) libglib-2.0.so.0 => /usr/lib/libglib-2.0.so.0 (0x4037f000) libasound.so.2 => /usr/lib/libasound.so.2 (0x403fc000) libdl.so.2 => /lib/libdl.so.2 (0x404a3000) libpthread.so.0 => /lib/libpthread.so.0 (0x404a7000) libstdc++.so.5 => /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/libstdc++.so.5 (0x404f9000) libm.so.6 => /lib/libm.so.6 (0x405c3000) libc.so.6 => /lib/libc.so.6 (0x405e5000) libgcc_s.so.1 => /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/libgcc_s.so.1(0x406f1000) libstdc++.so.6 => /usr/lib/gcc/i686-pc-linux-gnu/3.4.2/libstdc++.so.6 (0x406fa000) /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x80000000)
>roie@lightstart ~ $ ldd /usr/kde/3.3/lib/libartsmidi.so > ... > libstdc++.so.5 => /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/libstdc++.so.5 (0x404f9000) > ... > libstdc++.so.6 => /usr/lib/gcc/i686-pc-linux-gnu/3.4.2/libstdc++.so.6(0x406fa000) kdemultimedia links to two different version of the gcc libraries, it means that it was compiled with gcc-3.4 using some dependency that was compiled with gcc-3.3. You should recompile all the dependencies of arts and kdemultimedia with gcc-3.4, and then recompile them. Finding what to recompile is not easy, you have to look into the ".la" library files. For instance here I have /usr/lib/libtunepimp.la that contains the line dependency_libs='... /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/libstdc++.la ...' so it was compiled with the gcc libraries from 3.3, and tunepimp is a dependency of kdemultimedia... Try grep -l i686-pc-linux-gnu/3.3 /usr/lib/*.la /usr/kde/3.3/lib/*.la to find more...
That's funny. I did as you said, but grep didn't list any files, although there must bt some library that is linked to /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.4/libstdc++.so.5. :S
Have you tried to recompile kdemultimedia?
No. My kdemultimedia is still compiled with gcc-3.3.4. I will do that now. However, it seems a bit wierd to me, because arts is not depended on kdemultimedia. Therefore, artsd should be able to run even if kdemultimedia is absent...
... but if arts finds some plugin provided by kdemultimedia, it will try to load them: loading extension from '/usr/kde/3.3/lib/libartsmidi.la' failed: /usr/kde/3.3/lib/libartsmidi.so.0: undefined symbol ..... isn't it amazing in how many ways things can go wrong ;)
You were right. Re-emerging kdemultimedia sloved the problem.
*** Bug 105293 has been marked as a duplicate of this bug. ***