Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 30599 - frozen-bubble versus perl 5.8.1 emerge/run failures.
Summary: frozen-bubble versus perl 5.8.1 emerge/run failures.
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Games (show other bugs)
Hardware: x86 Linux
: High normal (vote)
Assignee: Gentoo Games
URL: http://forums.gentoo.org/viewtopic.ph...
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2003-10-07 13:01 UTC by Daan Willems
Modified: 2005-04-26 16:49 UTC (History)
3 users (show)

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


Attachments
A patch to fix the filledpie* typos in SDL-Perl (sdl-perl-1.20.3-typos.diff,663 bytes, patch)
2005-02-09 15:55 UTC, Ryan Egesdahl
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Daan Willems 2003-10-07 13:01:04 UTC
Emerging of the games-arcade/frozen-bubble-1.0.0-r2.ebuild fails, on my system with sys-devel/libperl-5.8.1 (gcc 3.3.1-r4, glibc 2.3.2-r1) installed, as follows:

>>> Source unpacked. 
 Can't load '/usr/lib/perl5/site_perl/5.8.0/i686-linux/auto/SDL_perl/SDL_perl.so' for module SDL_perl: libSDL_gfx.so.0: cannot open shared object file: No such file or directory at /usr/lib/perl5/5.8.1/i686-linux/DynaLoader.pm line 229. 
 at /usr/lib/perl5/site_perl/5.8.0/i686-linux/SDL.pm line 9 
 Compilation failed in require at /usr/lib/perl5/site_perl/5.8.0/i686-linux/SDL.pm line 9. 
 BEGIN failed--compilation aborted at /usr/lib/perl5/site_perl/5.8.0/i686-linux/SDL.pm line 9. 
 Compilation failed in require at -e line 1. 
 BEGIN failed--compilation aborted at -e line 1. 
 
 
Comment 1 Daan Willems 2003-10-07 13:01:04 UTC
Emerging of the games-arcade/frozen-bubble-1.0.0-r2.ebuild fails, on my system with sys-devel/libperl-5.8.1 (gcc 3.3.1-r4, glibc 2.3.2-r1) installed, as follows:

>>> Source unpacked. 
 Can't load '/usr/lib/perl5/site_perl/5.8.0/i686-linux/auto/SDL_perl/SDL_perl.so' for module SDL_perl: libSDL_gfx.so.0: cannot open shared object file: No such file or directory at /usr/lib/perl5/5.8.1/i686-linux/DynaLoader.pm line 229. 
 at /usr/lib/perl5/site_perl/5.8.0/i686-linux/SDL.pm line 9 
 Compilation failed in require at /usr/lib/perl5/site_perl/5.8.0/i686-linux/SDL.pm line 9. 
 BEGIN failed--compilation aborted at /usr/lib/perl5/site_perl/5.8.0/i686-linux/SDL.pm line 9. 
 Compilation failed in require at -e line 1. 
 BEGIN failed--compilation aborted at -e line 1. 
 
     *** I need perl-SDL installed 
 make: *** [dirs] Error 1 
 
 !!! ERROR: games-arcade/frozen-bubble-1.0.0-r2 failed. 
 !!! Function src_compile, Line 35, Exitcode 2 
 !!! (no error message) 
 
When symlinking 
ln -s /usr/lib/libSDL_gfx.so.8 /usr/lib/libSDL_gfx.so.0
the ebuild completes flawless.

Upon running, the game fails with errors stating that it's unable to find certain (perl related) files.

Can't locate fb_stuff.pm in @INC (@INC contains: /etc/perl /usr/lib/perl5/site_perl/5.8.1/i686-linux /usr/lib/perl5/site_perl/5.8.1 /usr/lib/perl5/site_perl/5.8.0/i686-linux /usr/lib/perl5/site_perl/5.8.0 /usr/lib/perl5/site_perl /usr/lib/perl5/vendor_perl/5.8.1/i686-linux /usr/lib/perl5/vendor_perl/5.8.1 /usr/lib/perl5/vendor_perl/5.8.0/i686-linux /usr/lib/perl5/vendor_perl/5.8.0 /usr/lib/perl5/vendor_perl /usr/lib/perl5/5.8.1/i686-linux /usr/lib/perl5/5.8.1 /usr/local/lib/site_perl /usr/lib/perl5/site_perl/5.8.0/i686-linux /usr/lib/perl5/site_perl/5.8.0 .) at /usr/games/bin/frozen-bubble line 59. 
 BEGIN failed--compilation aborted at /usr/games/bin/frozen-bubble line 59.

The requested file resides in /usr/games/lib/perl5/site_perl/5.8.1/i686-linux/fb_stuff.pm, which is not in the game's @INC. After symlinking this file similar failures occur. My guess is that frozen-bubble doesn't know how to handle the installment of libperl-5.8.1
Comment 2 SpanKY gentoo-dev 2003-10-07 15:00:48 UTC
run this:
emerge `qpkf -f -nc /usr/lib/perl5/site_perl/5.8.0`
rm -rf /usr/lib/perl5/site_perl/5.8.0
(assuming of course you yourself havent placed anything into that directory)

then `emerge frozen-bubble` should work
Comment 3 Daan Willems 2003-10-07 15:34:18 UTC
The frozen-bubble ebuild seems not prepared for media-libs/sdl-gfx-2.0.8
(including /usr/lib/libSDL_gfx.so.8.0.0) because it wants /usr/lib/libSDL_gfx.so.0
from media-libs/sdl-gfx-2.0.3; I guess therefore symlinking
ln -s /usr/lib/libSDL_gfx.so.8 /usr/lib/libSDL_gfx.so.0 fixed by build.

Then the frozen bubble program @INC doesn't seem to know about perl 5.8.1
putting files in /usr/games/lib/perl5/site_perl/5.8.1/i686-linux/ (it needs
for example fb_stuff.pm and fb_c_stuff.pm). I found out that /etc/perl was
not used on my system while it is frozen-bubble's @INC list; so I symlinked
a very nasty
ln -s /usr/games/lib/perl5/site_perl/5.8.1/i686-linux/ /etc/perl 
but frozen-bubble launched straight away...
Comment 4 Daan Willems 2003-10-07 16:05:14 UTC
After running the options menu the game still crashes when triggering 1player
game: 

[SDL Init] [Graphics...] [Levels] mcop warning: user defined signal handler
found for SIG_PIPE, overriding
[Sound Init]
Ready.
Illegal instruction

As reaction to SpanKY:
emerge `qpkf -f -nc /usr/lib/perl5/site_perl/5.8.0` 
(I took it as qpkg?) dropped out after 12 of the 21 emerges, stating:

--- !found obj /usr/doc/PDL-2.4.0/html/PDL/API.html
--- !found dir /usr/doc/PDL-2.4.0/html/PDL
--- !mtime obj /usr/bin/pptemplate
--- !mtime obj /usr/bin/perldl
--- !mtime obj /usr/bin/pdldoc
<<<        dir /usr/doc/PDL-2.4.0/html
<<<        dir /usr/doc/PDL-2.4.0
Traceback (most recent call last):
  File "/usr/bin/emerge", line 2149, in ?
    mydepgraph.merge(mydepgraph.altlist())
  File "/usr/bin/emerge", line 1394, in merge
    if not unmerge("clean", [xsplit[0]]):
  File "/usr/bin/emerge", line 1599, in unmerge
   
retval=portage.unmerge(mysplit[0],mysplit[1],portage.root,unmerge_action
not in ["clean","prune"])
  File "/usr/lib/python2.2/site-packages/portage.py", line 1945, in unmerge
    mylink.unmerge(trimworld=mytrimworld)
  File "/usr/lib/python2.2/site-packages/portage.py", line 4526, in unmerge
    if len(objld)>0:
TypeError: len() of unsized object
Comment 5 SpanKY gentoo-dev 2003-10-07 18:47:07 UTC
emerge 1.0.0-r3 and you should be all set
Comment 6 Daan Willems 2003-10-08 18:19:11 UTC
I compiled frozen-bubble on my 2 gentoo systems;

on the first (P4 - 2.8Ghz, ACCEPT_KEYWORDS="~x86", -march=pentium3 -O3) the
new frozen-bubble 1.0.0-r3 compiled straight away (GCC 3.3.1-r4, perl 5.8.1,
sdl-gfx 2.0.8 ) but I run into this 'illiegal instruction' when trying to
run the game.

on the second (AMD XP1800+,  ACCEPT_KEYWORDS="~x86", -march=athlon-xp -O3)
the new frozen-bubble 1.0.0-r3 wouldn't compile before I symlinked /usr/lib/libSDL_gfx.so.8.0.0
to /usr/lib/libSDL_gfx.so.8.0.0 (GCC 3.3.1-r4, perl 5.8.1, sdl-gfx 2.0.8
) but the game runs flawless.

i.e. the bug seems solved for my P4 system, but not for the AMD box; while
the problem stated in http://bugs.gentoo.org/show_bug.cgi?id=30643 seems
to occur only on the P4 system.
Comment 7 SpanKY gentoo-dev 2003-10-08 19:40:10 UTC
well considering that the original bug this was made for is fixed, we'll
leave this bug as FIXED ...

after all your new bug is unrelated and as such we'll handle it at Bug 30643
Comment 8 SpanKY gentoo-dev 2003-10-09 07:34:47 UTC
*** Bug 30756 has been marked as a duplicate of this bug. ***
Comment 9 Ryan Egesdahl 2005-02-09 15:51:58 UTC
Nope, sorry. It's not quite resolved yet. I am having the same problem and the aforementioned fixes didn't work for me.

I've had a similar problem like this before, and grepping out the libs tells me that the authors of SDL-Perl made a typo. Where they have 'filledpieColor' it should be 'filledPieColor'. Note the capitalization. If you grep the SDL libs, you'll note that while you can't find 'filledpieColor' you can find 'filledPieColor'. Here's a patch for all you happy people. It should finally fix the dastardly problem once and for all.

(By the way, this problem occurs with SDL-Perl 1.20.3, which, on my system, the Frozen Bubble ebuild emerges as a dependency.)
Comment 10 Ryan Egesdahl 2005-02-09 15:55:32 UTC
Created attachment 50874 [details, diff]
A patch to fix the filledpie* typos in SDL-Perl

Just patch this as usual into your SDL-Perl ebuild if it suffers from the
typos. As far as I can tell, it probably does.
Comment 11 b.eggleston 2005-04-24 11:22:13 UTC
How do you mean "Just patch this as usual into your SDL-Perl ebuild" ? I'm not up to date with how to patch files that way...

Cheers

Comment 12 SpanKY gentoo-dev 2005-04-26 16:49:29 UTC
thanks Ryan Egesdahl, 1.20.3-r1 in portage now with that patch