ClarkeConnect (C-C) has perl5.8.5 linux-thread-multi installed as default, but this version causes Squeezecenter to crash when using CLI on addons such as Moose and slimfx.
To fix these problems SqueezeCenter needs Perl-5.8.8 linux-thread-multi. My previous attempts to update C-C to perl 5.8.8 had limited success, as I had not configured the perl as multi-thread, nor accounted for C-C modules which were dependent on C-C perl libraries. There were lots of dependency problems, a real PITA especially with SC7 and some C-C modules did not work. Eventually I got Perl-5.8.8 running correctly on my main C-C machine but to prove the method, I used a vanilla C-C 4.2 running on a virtual machine. (this will also work with C-C4.1) This is what I did: Install a compiler. #apt-get update #apt-get clean #apt-get install cc-devel Create a new temp directory for the perl source code #mkdir /temp #cd /temp Download the latest source code from www.perl.com to the temp directory, use: #wget http://cpan.org/src/stable.tar.gz #tar -xzvf stable.tar.gz A new directory /temp/perl5.8.8 will be created - go there #cd perl-5.8.8 Install the thread-capable Perl somewhere different to the default install. To do that, use the -Dprefix argument and tell Configure not to link this new Perl as /usr/bin/perl with -Uinstallusrbinperl. Make a directory for the newly compiled perl: #mkdir /usr/local/bin/myperl ensure that you are in the unpacked /temp/perl-5.8.8 directory, then: #sh Configure -Dusethreads -Dprefix=/usr/local/bin/myperl -Uinstallusrbinperl During the Configure run, you will need to add essential ClarkeConnect perl 5.8.5 directories to the @INC path. To do this, respond to the prompts with a default except: When prompted for: "Colon-separated list of additional directories for perl to search [none]" enter the following:- /usr/lib/perl5/5.8.5/i386-linux-thread-multi:/usr/lib/perl5/site_perl/5.8.5/i386-linux-thread-multi:/usr/lib/perl5/vendor_perl/5.8.5 Accept all the defaults until prompted to check config.sh. (Optional) Open config.sh in nano (or other text editor) and find "otherlibdirs", the list of directories entered above should be there, if not or there are errors edit the "otherlibdirs" line and save config.sh. (Be careful not to change anything inadvertently) When the Configure run is complete, you can #make #make test #make install To get the new Perl to work from the default location (/usr/bin/) Rename the existing Perl binary (for safe keeping - if needed in the future), enter: #mv /usr/bin/perl /usr/bin/perl-old Create a symbolic link in place of the old Perl binary which points to the new Perl binary, by entering: #ln -s /usr/local/bin/myperl/bin/perl /usr/bin/perl Check that permissions allow execution Check that your version of perl is as you want it, and includes the correct directories in @INC. Use #perl -V When you are satisified that perl 5.8.8 is running correctly, install/update SqueezeCenter using the rpm. I had no problems with any SqueezeCenter dependencies, and all the C-C modules run correctly. -- Ramage T5500 1.6GHz, SqueezeCentre Version: 7.0 - 15023 Windows Vista, Alien 2.0b P4 2.6GHz, SqueezeCentre Version: 7.0 - 15413 - Windows XP, Alien 2.0b P2 266MHz, Linux ClarkConnect 4.2, SlimServer Version: 7 - 15415, Alien 2.0b, perl 5.8.8 i686-linux-thread-multi NSLU2 Unslung 6.8b SlimServer Version: 6.3.1 - 8476 - Linux, No Alien ------------------------------------------------------------------------ Ramage's Profile: http://forums.slimdevices.com/member.php?userid=5343 View this thread: http://forums.slimdevices.com/showthread.php?t=41188 _______________________________________________ unix mailing list [email protected] http://lists.slimdevices.com/lists/listinfo/unix
