Summary: | media-sound/krecord fails to build if kde4 is installed | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Pritpaul Mahal <pritpaul> |
Component: | [OLD] KDE | Assignee: | Gentoo KDE team <kde> |
Status: | RESOLVED WONTFIX | ||
Severity: | normal | CC: | reavertm, zzam |
Priority: | High | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Bug Depends on: | |||
Bug Blocks: | 279823 | ||
Attachments: |
build log with gcc 4.1.2
build log with gcc 4.3.4 |
Description
Pritpaul Mahal
2009-07-22 03:32:21 UTC
It has nothing to do with kdeprefix I'm certain. Try setting gcc-4.3.2 as your default compiler. Or maybe... please attach build log so that we can judge whether it really picks wrong KDE. Well, if you're already certain, I'm not sure what the point is of build logs. But I'll go ahead and attach them. (I don't have gcc 4.3.2, I used 4.3.4 as a hopefully close equivalent). Also note that I didn't recompile kde with the different compilers, just krecord (kde is all gcc 4.1.2) Also, your comment prompted me to look into this bug some more, and whereas before I just had a strong suspicion that this was kdeprefix related, based on the strong similarity of the messages to bug 238539 and the fact that it started happened after I recompiled with -kdeprefix and with no other changes (and same version of krecord), I am now 100% certain that -kdeprefix is the problem. I'll post my reasons for thinking so and a build fix (thoguh probably not an ebuild patch as I don't know enoguh about ebuilds) in a few minutes. Created attachment 203396 [details]
build log with gcc 4.1.2
Created attachment 203398 [details]
build log with gcc 4.3.4
And now, how I tracked this down so I'm now 100% sure it's a kde3 vs kde4 issue. After the build failed, I went into /var/tmp/portage/media-sound/krecord-1.16/work/krecord-1.16 and ran "make verbose=yes" to get the build command, which was "cc -L/usr/X11R6/lib64 -L/usr/qt/3/lib64 -o krecord krecord.o sound.o fft.o level.o buffer.o soundfft.o oss.o sunaudio.o -lkdeui -lkdecore -lqt-mt -lXext -lXmu -lX11". Running this command gets me the same build errors as I got from emerge. Replace the "cc" with "ld -t" to get where it's pulling libraries from, and I see: -lkdeui (/usr/X11R6/lib64/libkdeui.so) -lkdecore (/usr/X11R6/lib64/libkdecore.so) -lqt-mt (/usr/qt/3/lib64/libqt-mt.so) -lXext (/usr/X11R6/lib64/libXext.so) -lXmu (/usr/X11R6/lib64/libXmu.so) -lX11 (/usr/X11R6/lib64/libX11.so) Now, go back to the cc command, but with a -L/usr/kde/3.5/lib64 right after cc (so that it's before -L/usr/X11R6/lib64 where it's finding the kde4 libs), and: venture krecord-1.16 # cc -L/usr/kde/3.5/lib64 -L/usr/X11R6/lib64 -L/usr/qt/3/lib64 -o krecord krecord.o sound.o fft.o level.o buffer.o soundfft.o oss.o sunaudio.o -lkdeui -lkdecore -lqt-mt -lXext -lXmu -lX11 venture krecord-1.16 # ls -l krecord -rwxr-xr-x 1 root root 212488 Sep 7 15:33 krecord Success! I believe I've provided enough evidence to change the bug summary back. I'm not trying to be passive-aggressive or anything. If you still disagree, change it again and I won't touch it this time :) I wonder why kde (kde3) eclass doesn't override environment enought to have valid libs being picked by (even badly broken in this case) buildsystem. What's the suggested replacement? I use kde-3.5, and I use (rarely) krecord when I want to check if my microphone (and the relevant part of the sound card) works. What am I supposed to use instead? gone |