Solved [Solved] Perl module issue when installing squeezeboxserver

I had a working installation (from ports: portupgrade -f squeezeboxserver) of audio/squeezeboxserver. Then I upgraded lang/perl5.16 to lang/perl5.18 (also via ports).

Now my audio/squeezeboxserver installation will not start. It is claiming that:
Code:
The following CPAN modules were found but cannot work with Squeezebox Server:
  DBIx::Class (loaded <not found>, need 0.08109)

I have tried to upgraded the databases/p5-DBIx-Class module (via ports), but that did not resolve the issue. The error message keeps being the same.

First it was complaining about two other perl modules as well (Path::Class and SQL::Abstract) but after updating these two with portupgrade -f (databases/p5-SQL-Abstract and devel/p5-Path-Class) these messages disappeared.

I am sure there is a secret Perl trick that I have missed, but I can not figure out what it is. Everything else seems to be working perfectly on the host.

My system:
Code:
uname:
FreeBSD 9.1-RELEASE-p6 FreeBSD 9.1-RELEASE-p6 #0: Wed Aug 21 20:30:17 UTC 2013 i386

perl -v:
This is perl 5, version 18, subversion 1 (v5.18.1) built for i386-freebsd-64int
Copyright 1987-2013, Larry Wall

Sorry about that. Full error message:
Code:
/usr/local/etc/rc.d/squeezeboxserver start
Starting squeezeboxserver.
$[ used in numeric lt (<) (did you mean $] ?) at /usr/local/squeezeboxserver/CPAN/IO/String.pm line 82.
defined(@array) is deprecated at /usr/local/squeezeboxserver/CPAN/Log/Log4perl/Config.pm line 840.
	(Maybe you should just omit the defined()?)
The following CPAN modules were found but cannot work with Squeezebox Server:
  DBIx::Class (loaded <not found>, need 0.08109)

To fix this problem you have several options:
1. Install the latest version of the module(s) using CPAN: sudo cpan Some::Module
2. Update the module's package using apt-get, yum, etc.
3. Run the .tar.gz version of Squeezebox Server which includes all required CPAN modules.

What other information can I provide?

Mads
 
Re: Perl module issue when installing squeezeboxserver

Per the error message, it looks like audio/squeezeboxserver needs p5-DBIx-Class 0.08109:
Code:
The following CPAN modules were found but cannot work with Squeezebox Server:
  DBIx::Class (loaded <not found>, need 0.08109
The current version of databases/p5-DBIx-Class in the ports tree is 0.08250. Could this version mismatch be the problem?
 
Re: Perl module issue when installing squeezeboxserver

Good thinking @trh411.

It might be the root cause. Now I just need to confirm and find a way around it.

My first attempt was to change the version in modules.conf. That changed the error message, but the new version of DBIx::Class still does not load (was to be expected):
Code:
The following CPAN modules were found but cannot work with Squeezebox Server:
  DBIx::Class (loaded <not found>, need 0.08250)

I will now see if I can downgrade DBIx::Class to confirm the assumption.

Thank your for your help.

Mads
 
Last edited by a moderator:
I spent so much time on this port and decided to give a manual install a go. I was made aware of this howto: http://forums.slimdevices.com/showthread.php?99648-Howto-build-a-self-contained-LMS. It is written for Debian, but with small tweaks it can easily be used on FreeBSD 9.1. Unfortunately it means that I will have two versions of Perl running. It's not a problem. It's just against my principles :h This made everything work. I will be getting back to the Squeezebox server port later when I have more time.

Thanks for the input.

Mads
 
Back
Top