Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 328895 - media-sound/squeezeboxserver-7.5.1 failed after perl upgrade
Summary: media-sound/squeezeboxserver-7.5.1 failed after perl upgrade
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: x86 Linux
: High normal (vote)
Assignee: Joe Peterson (RETIRED)
URL:
Whiteboard:
Keywords:
: 329409 336661 338051 338100 (view as bug list)
Depends on:
Blocks: perl-5.12.1
  Show dependency tree
 
Reported: 2010-07-19 03:15 UTC by Mark
Modified: 2010-09-20 14:16 UTC (History)
5 users (show)

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


Attachments
Allow squeezeboxserver to use perl-5.12.1 (build-modules-with-perl-5.12.1.patch,4.39 KB, patch)
2010-07-19 06:40 UTC, Tim Harder
Details | Diff
Allow squeezeboxserver to use perl-5.12.2 (build-modules-7.5.1-perl-5.12.2.patch,651 bytes, patch)
2010-09-10 01:06 UTC, Tim Harder
Details | Diff
Simplify the build-modules script (build-modules-7.5.1-simplify.patch,20.69 KB, patch)
2010-09-10 19:06 UTC, Tim Harder
Details | Diff
Updated build-modules script to build EV with any Perl version (build-modules-7.5.1-r1.sh,1.14 KB, text/plain)
2010-09-11 13:18 UTC, Stuart Hickinbottom
Details
Updated ebuild to go with the updated build-modules script (squeezeboxserver-7.5.1-r1.ebuild,17.11 KB, text/plain)
2010-09-11 13:19 UTC, Stuart Hickinbottom
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Mark 2010-07-19 03:15:19 UTC
I recently upgraded to perl 5.12.  Sometime later, I required a system.  After reboot, SBS failed to start with complaints about some perl issues.  I ran perl-cleaner to no avail.  Next I rebuilt SBS, but (naturally) get the message:

>>> Compiling source in /var/tmp/portage/media-sound/squeezeboxserver-7.5.1/work/squeezeboxserver-7.5.1-30836-noCPAN ...
 * Building bundled Perl modules (some warnings are normal here)...
Building for Linux / i386-linux

*** ERROR: Could not find Perl!

 * ERROR: media-sound/squeezeboxserver-7.5.1 failed:
 *   Unable to build Perl modules
 * 

So it looks like the the new perl may not be happy with SBS.   


I thus downgraded back to perl 5.10, rebuilt and statrted SBS successfully.

Reproducible: Always

Steps to Reproduce:
1. See above
2.
3.
Comment 1 Tim Harder gentoo-dev 2010-07-19 06:07:05 UTC
It looks like the build-modules.sh script needs a few changes to be able to build squeezeboxserver with >=perl-5.12. 

I haven't tested this yet so I don't know if any other files need to be altered as well.
Comment 2 Tim Harder gentoo-dev 2010-07-19 06:40:48 UTC
Created attachment 239337 [details, diff]
Allow squeezeboxserver to use perl-5.12.1

A patch for the build-modules.sh script that allows squeezeboxserver to be installed and run with perl-5.12.1.
Comment 3 Tim Harder gentoo-dev 2010-07-19 06:43:30 UTC
With the patch I attached, I am able to successfully build, install, and run squeezeboxserver-7.5.1 with perl-5.12.1.

The patch is meant to be applied to the build-modules.sh script found in the files directory of squeezeboxserver's ebuild directory.
Comment 4 Mark 2010-07-19 13:26:25 UTC
I applied the patch, upgraded perl to 5.12.1, perl-cleaner, and rebuilt SBS.  SBS build was fine and SBS is running normally.  Thanks for the patch, I am addicted to music and most is served by SBS here.
Comment 5 Stuart Hickinbottom 2010-07-22 15:06:49 UTC
Yes, you're quite right the module builder needs a tweak to support the new paths.

I'll check and apply that patch and get it pushed to Joe for committing to Portage in the next couple of days. Thanks for finding and resolving the problem - it makes my life easier.
Comment 6 Stuart Hickinbottom 2010-07-24 11:19:14 UTC
Joe, I've tested it and the attached patch does the biz - could you apply that to 7.5.1? It doesn't need a -r1 bump because it only affects people for whom the current ebuild fails.

You can either apply the patch or download the current version of the affected file with the patch applied from my git repository:
http://github.com/hickinbottoms/squeezecenter-ebuild-for-gentoo/raw/master/files/build-modules.sh

Thanks.
Comment 7 Joe Peterson (RETIRED) gentoo-dev 2010-07-24 15:20:24 UTC
Will do.

BTW, upstream should integrate this in their code ultimately.  I would assume they'd support perl12 eventually, but perhaps pushing this to them would be a good idea.  Do you want to try, Stuart?
Comment 8 Joe Peterson (RETIRED) gentoo-dev 2010-07-24 15:33:14 UTC
Stuart, disregard the last comment...not enough coffee yet...  For some reason I was thinking this was an upstream script and forgot it is your build script.
Comment 9 Joe Peterson (RETIRED) gentoo-dev 2010-07-25 18:52:47 UTC
*** Bug 329409 has been marked as a duplicate of this bug. ***
Comment 10 Nate Weibley 2010-09-09 22:17:25 UTC
(In reply to comment #6)
> Joe, I've tested it and the attached patch does the biz - could you apply that
> to 7.5.1? It doesn't need a -r1 bump because it only affects people for whom
> the current ebuild fails.
> 
> You can either apply the patch or download the current version of the affected
> file with the patch applied from my git repository:
> http://github.com/hickinbottoms/squeezecenter-ebuild-for-gentoo/raw/master/files/build-modules.sh
> 

Stuart, 

Perl has been bumped to 5.12.2 and now squeezeboxserver is failing to build again, so this patch needs an update. 

Comment 11 Tim Harder gentoo-dev 2010-09-10 01:06:57 UTC
Created attachment 246644 [details, diff]
Allow squeezeboxserver to use perl-5.12.2

I've attached a patch for the module builder script to work with perl-5.12.2 which was recently added to the tree.
Comment 12 Stuart Hickinbottom 2010-09-10 07:17:44 UTC
Yes; could this be re-opened, Joe, and I'll check and incorporate that patch.

The script is very fragile for Perl versions (for no good reason, I think), so I'll see if I can make it a bit more robust.

Comment 13 Stuart Hickinbottom 2010-09-10 07:18:31 UTC
Note, I've put a note in bug#336661 to indicate that it's a duplicate of this one (it's not assigned to me so I can't actually mark it as RESOLVED).
Comment 14 Torsten Veller (RETIRED) gentoo-dev 2010-09-10 07:27:04 UTC
*** Bug 336661 has been marked as a duplicate of this bug. ***
Comment 15 Torsten Veller (RETIRED) gentoo-dev 2010-09-10 07:27:17 UTC
.
Comment 16 Joe Peterson (RETIRED) gentoo-dev 2010-09-10 13:15:46 UTC
Torsten & Stuart, thanks.  Yes, Stuart, if it's straightforward to make it more robust, by all means.  :)
Comment 17 Tim Harder gentoo-dev 2010-09-10 17:13:59 UTC
It seems like the the EV module is the only thing requiring the script to be kept around at this time. 

Would it be possible to get an ebuild for EV in the tree so we could drop this script? It seems this has been tried before (bug #287257) but nothing came of it due to it being hard to unbundle dev-libs/libev from the module. Is there any good way to solve this so we can get EV in the tree?

Comment 18 Tim Harder gentoo-dev 2010-09-10 19:06:16 UTC
Created attachment 246750 [details, diff]
Simplify the build-modules script

This patch removes most of the unneeded code from the build-modules script and allows it to work with any perl version in 5.*.* that squeezeboxserver will build and run with.

Note that it assumes /usr/bin/perl exists and uses it to build the EV module. This is true on Gentoo systems as /usr/bin/perl should be a symlink to /usr/bin/perl5.12.2 or whatever version of perl is installed on the system.

Using this patch, squeezeboxserver-7.5.1 builds fine for me with perl-5.12.2 and should work for future releases.
Comment 19 Joe Peterson (RETIRED) gentoo-dev 2010-09-10 19:27:39 UTC
Tim, thanks.  I will be out of touch for a couple of days, but I'll leave it for Stuart to have a look at, and I can get the patch in portage early next week.
Comment 20 Stuart Hickinbottom 2010-09-11 13:18:51 UTC
Created attachment 246826 [details]
Updated build-modules script to build EV with any Perl version

Thanks Tim - I've taken what you've done in the patch and further simplified it a bit. This works for my 5.12.2 test Perl installation and I expect it'll also work for other Perl versions (I'll test it with the stable Perl and report back here if there are problems).

This involves an updated build-modules script and a new ebuild (since it requires an additional parameter to the script and changes how the compiled EV is installed). This updated ebuild also fixes the problem where the correct prefs weren't fixed if an emerge --config was redone following installation.
Comment 21 Stuart Hickinbottom 2010-09-11 13:19:47 UTC
Created attachment 246828 [details]
Updated ebuild to go with the updated build-modules script

Updated ebuild to go with the previously attached updated build script.
Comment 22 Marco Schinkel 2010-09-16 09:00:23 UTC
The current ebuild requests specific versions of the following modules:

dev-perl/Audio-Scan-0.82
dev-perl/DBIx-Class-0.08123

I wonder if this is really useful. Maybe we can change that to a >=


Comment 23 Stuart Hickinbottom 2010-09-17 08:49:06 UTC
(In reply to comment #22)
> The current ebuild requests specific versions of the following modules:
> 
> dev-perl/Audio-Scan-0.82
> dev-perl/DBIx-Class-0.08123
> 
> I wonder if this is really useful. Maybe we can change that to a >=
> 

We've had problems with versions of CPAN modules before - Logitech recommend a specific version of Audio::Scan for a version of SBS (see comment#11 in bug#314073, for example).

DBIx-Class is complex and I had trouble finding a combination of DBIx-Class-related modules that worked together.

SBS is a particularly complicated ebuild that is hard to debug when it's a problem caused by CPAN module-related version problems - I'd prefer to keep the CPAN modules close to the versions that Logitech have tested if possible as the testing I can do on a different version is small by comparison.

If there's a particular problem we could look at changing the dependencies, but unless that's the case I'd rather leave it where it appears to be working reasonably well...
Comment 24 Joe Peterson (RETIRED) gentoo-dev 2010-09-20 01:05:27 UTC
*** Bug 338051 has been marked as a duplicate of this bug. ***
Comment 25 Joe Peterson (RETIRED) gentoo-dev 2010-09-20 14:16:51 UTC
*** Bug 338100 has been marked as a duplicate of this bug. ***