| Summary: | dev-perl/sdl-perl broken with mpeg flag and old libraries in /usr/local/lib | ||
|---|---|---|---|
| Product: | Gentoo Linux | Reporter: | Mark Purtill <gentoo> |
| Component: | [OLD] Games | Assignee: | Gentoo Games <games> |
| Status: | RESOLVED INVALID | ||
| Severity: | normal | ||
| Priority: | High | ||
| Version: | 2006.1 | ||
| Hardware: | All | ||
| OS: | Linux | ||
| Whiteboard: | |||
| Package list: | Runtime testing required: | --- | |
|
Description
Mark Purtill
2006-10-31 23:20:26 UTC
has nothing to do with frozen-bubble re-emerge sdl-perl I did, repeatedly. (Sorry for multiple comments; somehow the last one posted before I finished.) In fact, sdl-perl wasn't emerged at all before I tried emerging frozen-bubble. I also tried unemerging sdl-perl and re-emerging it from scratch, and that didn't help either. If this is a sdl-perl problem, feel free to re-assign as appropriate. then try re-emerging libsdl/smpeg I tried re-emerging libsdl/smpeg, along with all the sld libraries; that had no effect. I also tried revdep-rebuild and perl-clean, neither of which did anything. Finally, I unemerged perl and all the modules and removed /usr/lib/perl5, and re-emerged them all. That also had no effect.
Meanwhile, on another (virtual) machine I have access to, I tried emerging frozen-bubble, and it worked fine. After playing around I little, I found that if I emerge -C smpeg and turn off the mpeg flag ("dev-perl/sdl-perl -mpeg" in /etc/portage/package.use) and re-emerge sdl-perl, then "perl -e 'use SDL'" works and I can emerge frozen-bubble. (I suspect the mpeg flag is off on the virtual machine where the compilation works, but it's behind a firewall so I can't check now.)
I also find that if smpeg is installed when sdl-perl is emerged, then "perl -e 'use SDL'" gives the SMPEG_playAudioSDL not found error, even with the mpeg flag off. (If the flag is on, then libsdl/smpeg is merged anyway.)
Finally, after all that, frozen_bubble crashes with the error:
[[ Frozen-Bubble-1.0.0 ]]
http://www.frozen-bubble.org/
Copyright (c) 2000, 2001, 2002, 2003 Guillaume Cottenceau.
Artwork: Alexis Younes <73lab at free.fr>
Amaury Amblard-Ladurantie <amaury at linuxfr.org>
Soundtrack: Matthias Le Bidan <matthias.le_bidan at caramail.com>
Design & Programming: Guillaume Cottenceau <guillaume.cottenceau at free.fr>
Level Editor: Kim and David Joham <[k|d]joham at yahoo.com>
Sponsored by MandrakeSoft <http://www.mandrakesoft.com/>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License version 2, as
published by the Free Software Foundation.
[SDL Init] [Graphics...] [Levels] [Sound Init]
Ready.
/usr/bin/perl: symbol lookup error: /usr/lib/perl5/site_perl/5.8.8/i686-linux/auto/fb_c_stuff/fb_c_stuff.so: undefined symbol: Mix_FadeInMusicPos
That may be another bug, but it may be another manifestation of the same problem. (BTW, it doesn't happen on that virtual machine I mentioned, but that's got no sound at all.)
just curious if it works with sdl-perl-1.20.3-r1 The compilation works okay, despite the presence of smpeg. But running frozen-bubble gets the same error about Mix_FadeInMusicPos. what does `emerge libsdl -pv` show how about: readelf -s /usr/lib/libSDL_mixer.so | grep Fade readelf -s /usr/lib/libsmpeg.so | grep playAudio readelf -d /usr/lib/perl5/vendor_perl/5.8.8/i686-linux/auto/SDL_perl/SDL_perl.so readelf -d /usr/lib/perl5/vendor_perl/5.8.8/i686-linux/auto/SDL_perl/SDL_perl.so did the trick; it showed that SDL_perl was picking up some old sdl and smpeg libraries in /usr/local/lib/; deleting them fixed both problems. I've updated the summary and mark as INVALID. (But if anyone knows how to prevent the emerge from looking at /usr/local/lib, please let me know.) the answer is: dont put things in /usr/local the compiler is supposed to look there by design so that people can put their own modifications without screwing with /usr |