[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [cobalt-users] Implications of upgrading Perl?
- Subject: Re: [cobalt-users] Implications of upgrading Perl?
- From: Bruce Timberlake <Bruce.Timberlake@xxxxxxx>
- Date: Tue Apr 30 00:24:01 2002
- Organization: Sun Microsystems, Inc.
- List-id: Mailing list for users to share thoughts on Cobalt products. <cobalt-users.list.cobalt.com>
> Bruce on a RAQ4 perl is usually located as follows:
> /usr/bin/perl5.00503
> /usr/lib/perl5
> /usr/bin/perl
> /usr/man/man1
>
> The above command will I believe install perl as follows:
> /usr/local/bin/perl5.6.1
> /usr/local/lib/perl5
> /usr/local/bin/perl
> /usr/local/man/man1
>
> If this is the case I have a couple of questions, if you would be so kind to
> help.
>
> Does this mean you have two copies of perl on the RAQ and the original perl
> is left on for the Admin interface?
No, there _are_ remnants of the original Perl install. But
/usr/bin/perl gets overwritten, so unless you are manually calling
/usr/bin/perl5.00503 you will be calling the "new" Perl by using
#!/usr/bin/perl...
> I presume all existing perl scripts on websites would need to be amended if
> you wanted them to use the updated perl ?
No, the install routine for 5.6.1 overwrites/re-links the common calling
methods so that #!/usr/bin/perl just gets the new Perl...
> Would you also need to reinstall any cpan modules previously installed in
> the "old" perl.
Yes, as 5.6.1 sets up it's own tree for that (I'm sure you could add
your old CPAN path to the otherlibdirs path (or someplace else) and have
them "just work" but I didn't experiment with that. I took a plain
vanilla RaQ "out of the box" and ran the upgrade on it... no
experimenting with CPAN, etc...
> Is it possible to install the latest version to replace the old version in
> the original locations ?
I would think so, by setting some more variables via the -Dxxxxx options
on the command line:
-Dinstallarchlib='/usr/lib/perl5/5.6.1/i586-linux'
-Dinstallbin='/usr/bin'
-Dinstallman1dir='/usr/man/man1'
-Dinstallman3dir='/usr/man/man3'
-Dinstallprefix='/usr/bin'
-Dinstallprefixexp='/usr/bin'
-Dinstallprivlib='/usr/lib/perl5/5.6.1'
-Dinstallscript='/usr/bin'
-Dinstallsitearch='/usr/lib/perl5/site_perl/5.6.1/i586-linux'
-Dinstallsitebin='/usr/bin'
-Dinstallsitelib='/usr/lib/perl5/site_perl/5.6.1'
-Dlddlflags='-shared -L/usr/lib'
-Dldflags=' -L/usr/lib'
-Dman1dir='/usr/man/man1'
-Dman1direxp='/usr/man/man1'
-Dman3dir='/usr/man/man3'
-Dman3direxp='/usr/man/man3'
-Dperl5='/usr/bin/perl'
-Dperlpath='/usr/bin/perl'
-Dprefix='/usr'
-Dprefixexp='/usr'
-Dprivlib='/usr/lib/perl5/5.6.1'
-Dprivlibexp='/usr/lib/perl5/5.6.1'
-Dscriptdir='/usr/bin'
-Dscriptdirexp='/usr/bin'
-Dsitearch='/usr/lib/perl5/site_perl/5.6.1/i586-linux'
-Dsitearchexp='/usr/lib/perl5/site_perl/5.6.1/i586-linux'
-Dsitebin='/usr/bin'
-Dsitebinexp='/usr/bin'
-Dsitelib='/usr/bin/perl5/site_perl/5.6.1'
-Dsitelibstem='/usr/lib/perl5/site_perl'
-Dsitelibexp='/usr/lib/perl5/site_perl/5.6.1'
-Dsiteprefix='/usr'
-Dsiteprefixexp='/usr'
-Dstartperl='#!/usr/bin/perl'
(I got this list by going through the config.sh generated by my original
command and removing all the "/local" from the paths. I have no idea if
this will actually work or not...)
Some of the original binaries (specifically /usr/bin/perl5.00503) will
probably still be hanging around in the filesystem though...
> If not, would the cobalt admin cgi scripts just need to be changed from
> #!/usr/bin/perl #!/usr/local/bin/perl
No changes necessary; I have verified "every" function in the UI still
works properly (I didn't test every single one, but the big ones --
managing sites/users, uploading PKGs, etc -- all work for me with no
changes)
Remember also, that the original Perl is installed via RPMs, so the RPM
database still thinks they are there. But a "perl -v" will reveal 5.6.1
as the functioning Perl interpreter...
--
Bruce Timberlake
Sun Cobalt Technology Engineer
Sun Microsystems, Inc.