Perl 5.8.4 lands in Solaris 10

*********  This mail is automatically generated  *******

Your putback for the following fix(es) is complete:

    5040539 Perl 5.8.4 should be integrated into S10
    4915255 perl tries to force -xc99=%none on embed clients
    5059815 Perl should have perlgcc out-of-the-box

These fixes will be in release:


The gatekeeper will mark these bugids "fixed" and "integrated" in bugtraq
as soon as the gate has been delivered to the WOS.  However, you can mark
them "fixed" (but not "integrated") now if you wish.

        Your Friendly Gatekeepers


As part of the day job I look after the version of Perl which is included in Solaris, and as Perl 5.8.4 came out fairly recently I thought I'd better do an update - the text above is from an email sent by the automated system that monitors integrations into the Solaris source repository or 'gate' . Several hundred people have checked in changes to Solaris 10 so far ('putback' in SolarisSpeak), so the Linux model where everything funnels through Linus just wouldn't work for us. Also, contrary to common mis-perceptions we don't 'port' Solaris to x86 after doing the Sparc version, both are developed in parallel and there is one common source tree, so we have to develop, debug and test on both platforms before integration. In fact my workstation at home is a Sparc box, and the one at work is an Opteron, so like all Solaris developers I have a foot firmly in both camps.

Putting pack changes into Solaris can be quite a daunting experience, as everyone who works on Solaris receives a copy of the putback notification, and if your changes don't stick, a copy of the followup notification as they are backed out of the gate. The source repository or 'gate' machines (one sparc, one x86) run last night's build of the OS, so if you screw up and break the gate machines it means that all those people also know about it, and nobody can integrate until it is fixed - which concentrates the mind wonderfully when you come to integrate your stuff ;-) Every 2 weeks we glue together all the bits we ship - Solaris, X11, Gnome, CDE, Java and so on into the WOS ('Wad Of Stuff') and put it all through a series of test suites, then we do the whole thing over again two weeks later. It's one of these fortnightly builds that is periodically released as the Software Express for Solaris builds, or 'SX' for short, and we run them internally on lots of systems - for example Solaris developers run them on their desktops, and the main 2000+ user NFS server that holds the engineers home directories runs the numbered builds as well.

As far as the Perl 5.8.4 integration goes, I'd like to thank Nick Clark and Rafael Garcia-Suarez for their help (they are the people currently coordinating the Perl 5.8.x release series). We spent a morning on IRC discussing which additional patches to Perl would be advisable over and above stock 5.8.4 - Rafael is the Mandrake Perl maintainer to boot, so the Solaris and Mandrake patch lists are remarkably similar ;-) I found a couple of minor Perl warts on the way through and they have made it back into the Perl perforce repository for 5.8.5.

In addition, I've integrated a version of PerlGcc into Solaris 10. This allows you to use gcc to build modules from CPAN, the Perl module archive. As Perl is built as part of Solaris, it uses the same compilers as the OS, the Forte ones. Because Perl stores the details of the compiler it was built with for use when building modules, you normally need to build any add-on modules with the same compiler as you used to build Perl in the first place. PerlGcc provides a drop-in replacement for the appropriate config files, configured to used gcc instead of the Forte compilers. (You can grab a prebuilt copy of gcc from here). For those of you who still on Solaris 8 and 9, you can get a version of PerlGcc from here on CPAN. Unfortunately there is one slight wrinkle, if you've updated ExtUtils::MakeMaker it probably won't work. I had to make some changes to MakeMaker to get PerlGcc to work, and these are specific to the version of MakeMaker that was shipped in Solaris. I have come up with a generic way of doing this, and although the necessary changes have been submitted and will be in the next version of MakeMaker to be released, they aren't available yet. I'm hoping to release an update to the PerlGcc on CPAN over the next couple of weeks or so to work around this - check back here for announcements.

Tags : , , ,
Categories : Solaris, Perl, Work

Re: Perl 5.8.4 lands in Solaris 10

Thanks for the hint about using 'perlgcc' on Solaris 10. I am just getting started with Solaris 10, and was bumping my head into CPAN on the Solaris perl wanting to use the Forte cc! However, I had to go and read this page: In order to fully understand how to use perlgcc. Thanks, -Andy.

Re: Perl 5.8.4 lands in Solaris 10

on solaris 10 GA amd64, trying to compile module Event without success perlgcc creates unusable Makefile lacks of DIRFILESEP = / don't find target blibdirs.ts and other things...

Re: Perl 5.8.4 lands in Solaris 10

I have a new Sol 10 sparc system , The latest perl version in that OS is 5.8.4 Of course I need to add some additional Perl module. Got into the compiler problem , so I wanted to install PerlGcc 1.3 PerlGcc 1.3 would not install , It complains about the level of Perl Invalid Perl version 5.008004 This module supports 5.005_03 and 5.6.1 only !!! This seems to be a catch 22 !!!!! Eric

Re: Perl 5.8.4 lands in Solaris 10

The version on CPAN is for earlier versions of Solaris - for Solaris 10 perlgcc is included as standard, and can be found at /usr/perl5/bin/perlgcc

Re: Perl 5.8.4 lands in Solaris 10

Am trying ultimately to install Movable Type 2.6 under Solaris 10. Last thing I'm stuck on is install DBD::mysql. This requires install DBI to compile properly. I got stuck due to the lack of the FORTE compiler on my system until I ran into this thread. Tried /usr/perl5/bin/perlgcc -MCPAN -e shell then cpan> install DBI [installed OK with GCC] cpan> install DBD::mysql [still had the FORTE compiler flags] Tracked back to the "Makefile.PL" within the "DBD::mysql" package, didn't easily see where the CFLAGS came from there. I also already modified the "" in the /usr/perl/5.8.6 tree to comment out all the CFLAGS that CPAN is complaining about. What are my next steps? Can you direct me? I'll definitely document whatever I come up with ... Oh, and I have both BLASTWAVE and SUNFREEWARE available .. maybe I should just de-install the SUN PERL stuff entirely and go to BW or SFW versions of PERL? Puzzled, confoosed, and ready for a 3-day holiday! Charlie in TX

Re: Perl 5.8.4 lands in Solaris 10

I have Solaris 9 (can't upgrade it). What's my solution for this problem there? There's no perlgcc shipped on Sol9. I got a copy from and installed it, but it doesn't work: when I try to run perlgcc it says: Can't locate ExtUtils/ in @INC and sure enough, Perl 5.6.1 on Solaris 9 doesn't provide (or Any help for me? Thanks!

Re: Perl 5.8.4 lands in Solaris 10

Thank you for your work on PerlGcc! I'm very happy to be able to use the Perl packages included on the Solaris 10 install media versus recompiling with gcc, repackaging and losing all of the Sun patches. I don't suppose there's a similar tool available for the versions of Apache that ship with Solaris 10?