Perl 5.10.0
How to upgrade to Perl 5.10.0

Upgrade to Perl 5.10.0

On December 18th, 2007, the Perl Foundation announces the release of Perl 5.10, the first major upgrade to the wildly popular dynamic programming language in over five years.

Perl 5.10 brings a lot of new features to the Perl programming language. You can get a glimpse of them at http://dev.perl.org/perl5/news/2007/perl-5.10.0.html. This page will tell you how to upgrade to Perl 5.10.

Upgrading on Windows

ActivePerl

I've always had a lot of luck using ActivePerl on Windows, and you can get version 5.10 from their site. Just link to ActivePerl.com and poke around for the download. Yes, ActivePerl is free; just keep following the "Download" links to get it. ActiveState (the company) wants to sell prepackaged DVDs that have ActivePerl and half a dozen other development tools on them, but the interpreter itself is a free download.

Strawberry Perl

I've never personally used Strawberry Perl, but I've heard some good things about it. Apparently it's just like the standard Perl that comes preinstalled on all Unix/Linux/Mac OS systems, but is for Windows. It's also fully CPAN compatible, which makes it that much better than ActiveState's PPM system. You can get Strawberry Perl at StrawberryPerl.com.

Upgrading on Linux

Since the Windows distributions of Perl come in binary form which install themselves just like any other piece of Windows software, this tutorial instead explains how to compile Perl 5.10 for a Linux machine. In this tutorial, CentOS 5 / Red Hat Enterprise Linux 5 will be used, however the procedure should be quite similar for other distributions of Linux as well.

Note: You may be tempted to do a `yum remove perl` to remove the 5.8 version that your distribution came with. Don't. I'll give an explanation why later on.

Does your vendor already have Perl 5.10?

If you can install Perl 5.10 via yum, apt, portage, or whatever your package manager is, I highly recommend you do it. It's always better to install things so that your package manager is aware of their existence rather than to go ahead and install something behind its back. If all you can get is Perl 5.8, though, you'll need to compile it yourself.

Download the Perl Source

Just link to http://search.cpan.org/dist/perl/ and click the "Download" link at the top of the page. That should get you the source code to the most recent version of Perl, which is currently 5.10.0. Download it, extract it somewhere, and open up a terminal.

Make and Install

This is the procedure I used to compile Perl. I logged on as root for the entire process; you may wish to wait until the `make install` phase to switch to root, or do a `sudo make install`.

My system already had all the dependencies installed, so I can't give you a clear list of all the packages you'll need to be able to compile Perl. However, I know you'll need GNU Make and probably the GNU C Compiler. These can be installed quite easily on pretty much every Linux distribution using their package manager.

CLI:
yum install make
yum install gcc
  1. Switch to root.
    CLI:
    su -
    Enter the root password and hit enter.
  2. Change to the directory you extracted Perl to. I extracted mine to my regular user's home directory.
    CLI:
    cd /home/user/perl-5.10.0
  3. Configure the installation. This phase will make sure all the dependencies are installed and guess some default options. It's usually pretty good at guessing.
    CLI:
    sh Configure -de -Dusethreads
    The -Dusethreads option is to compile the interpreter to support threads (which I recommend; there's no reason I can see why you SHOULDN'T compile with threads).
  4. Run the standard make, make test, and make install commands. Note that `make install` must be executed as root, so if you're playing it safe and keeping root out of this until `make install`, you'll need to `sudo make install` instead (or switch to root, `cd` back to the source directory, and then do `make install`
    CLI:
    make
    make test
    make install
On my system, it installed the Perl 5.10.0 interpreter into /usr/local/bin/perl. Pay attention to what `make install` tells you to make sure you know where the Perl binary was moved to.

Post Configuration

By the time Perl 5.10 finished installing, I now have two different versions of Perl installed: the previous 5.8 version and my new 5.10. Like I said before, you may be tempted to try and remove version 5.8, but don't. I've still yet to get to the reason why.

On my system, /usr/local/bin/perl was version 5.10, but /usr/bin/perl was still the old 5.8 version. For general use, this was okay, because the new version of Perl showed up earlier in my $PATH statement, so that the `perl` command at the terminal executed the newer version. However, all of my CGI scripts on my web server were using /usr/bin/perl, the old version.

Code:
#!/usr/bin/perl -w
So this was a simple fix: just symlink the old binary to the new binary.
CLI:
su -
enter root's password
mv /usr/bin/perl /usr/bin/perl58
ln -s /usr/local/bin/perl /usr/bin/perl
What we did was we renamed the old perl to be "perl58" (so if you absolutely need it in the future, you can rename it back). Then we made a symbolic link to the new perl binary so that the location of the old binary still pointed to it.

Note, however, that Perl 5.8 and 5.10 have their own module paths, so if you installed any modules for Perl 5.8, you'll have to reinstall them for 5.10.

Why Not Remove Perl 5.8

Well, for a visual explanation, this is what `yum` wanted to remove when I did a simple `yum remove perl` command:
CLI:
=============================================================================
 Package                 Arch       Version          Repository        Size 
=============================================================================
Removing:
 perl                    i386       4:5.8.8-10.el5_0.2  installed          28 M
Removing for dependencies:
 ImageMagick             i386       6.2.8.0-3.el5.4  installed          11 M
 NetworkManager          i386       1:0.6.4-6.el5    installed         1.2 M
 NetworkManager-gnome    i386       1:0.6.4-6.el5    installed         393 k
 a2ps                    i386       4.13b-57.1.el5   installed         3.1 M
 alacarte                noarch     0.10.0-1.fc6     installed         604 k
 antlr                   i386       2.7.6-4jpp.2     installed         2.5 M
 aspell                  i386       12:0.60.3-7.1    installed         2.7 M
 aspell-en               i386       50:6.0-2.1       installed         3.4 M
 at-spi                  i386       1.7.11-2.fc6     installed         894 k
 bsf                     i386       2.3.0-11jpp.1    installed         810 k
 bsh                     i386       1.3.0-9jpp.1     installed         1.2 M
 chkfontpath             i386       1.10.1-1.1       installed          13 k
 conman                  i386       0.1.9.2-8.el5    installed         284 k
 control-center          i386       1:2.16.0-14.el5  installed         8.1 M
 desktop-printing        i386       0.19-20.el5      installed         259 k
 docbook-dtds            noarch     1.0-30.1         installed         3.6 M
 eel2                    i386       2.16.1-1.el5     installed         1.1 M
 ekiga                   i386       2.0.2-7.0.2      installed          11 M
 enscript                i386       1.6.4-4.1.el5    installed         1.7 M
 eog                     i386       2.16.0.1-6.el5   installed         1.8 M
 evince                  i386       0.6.0-8.el5      installed         2.7 M
 evolution               i386       2.8.0-40.el5     installed          35 M
 evolution-connector     i386       2.8.0-3.fc6      installed         2.5 M
 evolution-data-server   i386       1.8.0-25.el5     installed         9.9 M
 evolution-webcal        i386       2.7.1-6          installed         265 k
 fbset                   i386       2.1-22           installed          57 k
 festival                i386       1.95-5.2.1       installed          49 M
 file-roller             i386       2.16.0-2.fc6     installed         3.5 M
 firstboot               noarch     1.4.27.3-1.el5.centos  installed         974 k
 foomatic                i386       3.0.2-38.1.el5   installed          35 M
 gcalctool               i386       5.8.25-1.el5     installed         4.1 M
 gconf-editor            i386       2.16.0-3.el5     installed         852 k
 gdm                     i386       1:2.16.0-31.0.1.el5.centos  installed          10 M
 gedit                   i386       1:2.16.0-5.el5   installed          17 M
 ghostscript             i386       8.15.2-9.1.el5   installed          18 M
 ghostscript-fonts       noarch     5.50-13.1.1      installed         1.4 M
 gimp                    i386       2:2.2.13-2.0.7.el5  installed          25 M
 gimp-data-extras        noarch     2.0.1-1.1.1      installed         7.6 M
 gimp-help               noarch     2-0.1.0.10.1.1   installed          64 M
 gimp-print              i386       4.2.7-22         installed         4.1 M
 gimp-print-plugin       i386       4.2.7-22         installed          95 k
 gimp-print-utils        i386       4.2.7-22         installed          35 k
 gjdoc                   i386       0.7.7-12.el5     installed         1.7 M
 gnome-applets           i386       1:2.16.0.1-19.el5  installed          31 M
 gnome-desktop           i386       2.16.0-1.el5.centos.1  installed         1.9 M
 gnome-games             i386       1:2.16.0-1.fc6   installed          19 M
 gnome-mag               i386       0.13.1-1.fc6     installed         247 k
 gnome-media             i386       2.16.1-3.el5     installed         5.2 M
 gnome-mount             i386       0.5-3.el5        installed         228 k
 gnome-netstatus         i386       2.12.0-5.el5     installed         972 k
 gnome-panel             i386       2.16.1-6.el5     installed          10 M
 gnome-pilot             i386       2.0.13-16        installed         1.7 M
 gnome-power-manager     i386       2.16.0-8.el5     installed         6.1 M
 gnome-python2           i386       2.16.0-1.fc6     installed         588 k
 gnome-python2-applet    i386       2.16.0-1.fc6     installed          16 k
 gnome-python2-bonobo    i386       2.16.0-1.fc6     installed         167 k
 gnome-python2-canvas    i386       2.16.0-1.fc6     installed          45 k
 gnome-python2-desktop   i386       2.16.0-1.fc6     installed         234 k
 gnome-python2-extras    i386       2.14.2-4.fc6     installed          62 k
 gnome-python2-gconf     i386       2.16.0-1.fc6     installed          71 k
 gnome-python2-gnomeprint  i386       2.16.0-1.fc6     installed         427 k
 gnome-python2-gnomevfs  i386       2.16.0-1.fc6     installed         163 k
 gnome-python2-gtksourceview  i386       2.16.0-1.fc6     installed         347 k
 gnome-python2-libegg    i386       2.14.2-4.fc6     installed         113 k
 gnome-screensaver       i386       2.16.1-5.el5     installed         3.3 M
 gnome-session           i386       2.16.0-6.el5.centos  installed         1.3 M
 gnome-speech            i386       0.4.5-1.fc6      installed          72 k
 gnome-spell             i386       1.0.7-3.1        installed         258 k
 gnome-system-monitor    i386       2.16.0-3.el5     installed         2.9 M
 gnome-terminal          i386       2.16.0-3.el5     installed         8.4 M
 gnome-user-docs         noarch     2.16.0-2.fc6     installed          11 M
 gnome-utils             i386       1:2.16.0-3.el5   installed         8.5 M
 gnome-vfs2              i386       2.16.2-4.el5     installed         4.7 M
 gnome-vfs2-smb          i386       2.16.2-4.el5     installed          28 k
 gnome-volume-manager    i386       2.15.0-4.el5     installed         1.9 M
 gnomeicu                i386       1:0.99.14-1.el5.rf  installed         4.6 M
 gok                     i386       1.2.0-2.el5      installed         9.2 M
 gstreamer               i386       0.10.9-3.el5     installed         1.4 M
 gstreamer-plugins-bad   i386       0.10.3-6.el5.rf  installed         2.5 M
 gstreamer-plugins-base  i386       0.10.9-6.el5     installed         1.4 M
 gstreamer-plugins-good  i386       0.10.4-4.el5     installed         1.4 M
 gstreamer-plugins-ugly  i386       0.10.5-2.el5.rf  installed         1.4 M
 gthumb                  i386       2.7.8-5.el5      installed         5.6 M
 gtkhtml2                i386       2.11.0-3         installed         431 k
 gtkhtml3                i386       3.12.0-1.fc6     installed         2.8 M
 gtksourceview           i386       1.8.0-1.fc6      installed         1.6 M
 gtkspell                i386       2.0.11-2.1       installed          55 k
 gucharmap               i386       1.8.0-1.fc6      installed         5.8 M
 hal-cups-utils          i386       0.6.2-5          installed          57 k
 hal-gnome               i386       0.5.8.1-25.el5_1.1  installed         183 k
 hsqldb                  i386       1:1.8.0.4-3jpp.4  installed         3.8 M
 im-chooser              i386       0.3.3-6.el5      installed         188 k
 isdn4k-utils            i386       3.2-50.1         installed         9.3 M
 java-1.4.2-gcj-compat   i386       1.4.2.0-40jpp.112  installed          441 
 jpackage-utils          noarch     1.7.3-1jpp.2.el5  installed         163 k
 krb5-auth-dialog        i386       0.7-1            installed          52 k
 lftp                    i386       3.6.1-1.el5.rf   installed         4.5 M
 libbonobo               i386       2.16.0-1.fc6     installed         1.7 M
 libbonoboui             i386       2.16.0-1.fc6     installed         1.2 M
 libgail-gnome           i386       1.1.3-1.2.1      installed          60 k
 libgnome                i386       2.16.0-6.el5     installed         3.3 M
 libgnomeprint22         i386       2.12.1-9.el5     installed         1.3 M
 libgnomeprintui22       i386       2.12.1-6         installed         1.0 M
 libgnomeui              i386       2.16.0-5.el5     installed         3.1 M
 libgsf                  i386       1.14.1-6.1       installed         258 k
 libpurple               i386       2.3.1-0.el5      installed          20 M
 librsvg2                i386       2.16.1-1.el5     installed         425 k
 libwpd                  i386       0.8.7-3.el5      installed         535 k
 licq                    i386       1.3.0-1          installed         4.7 M
 linuxwacom              i386       0.7.4.3-2.el5    installed         402 k
 logwatch                noarch     7.3-5            installed         985 k
 mkbootdisk              i386       1.5.3-2.1        installed         7.2 k
 msttcorefonts           noarch     2.0-1            installed         5.5 M
 nautilus                i386       2.16.2-6.el5     installed          12 M
 nautilus-cd-burner      i386       2.16.0-7.el5     installed         1.7 M
 nautilus-extensions     i386       2.16.2-6.el5     installed          31 k
 nautilus-open-terminal  i386       0.6-6.el5        installed          57 k
 nautilus-sendto         i386       0.7-5.fc6        installed         172 k
 netpbm-progs            i386       10.35-6.fc6      installed         4.1 M
 numactl                 i386       0.9.8-2.el5      installed          87 k
 openarena               i386       0.7.1-3.fc8      installed         1.6 M
 openarena-data          i386       0.7.1-3.fc8      installed         260 M
 opengl-games-utils      noarch     0.1-4.fc8        installed         2.4 k
 openoffice.org-calc     i386       1:2.0.4-5.4.24   installed          19 M
 openoffice.org-core     i386       1:2.0.4-5.4.24   installed         221 M
 openoffice.org-draw     i386       1:2.0.4-5.4.24   installed         2.6 M
 openoffice.org-graphicfilter  i386       1:2.0.4-5.4.24   installed         425 k
 openoffice.org-impress  i386       1:2.0.4-5.4.24   installed         4.2 M
 openoffice.org-math     i386       1:2.0.4-5.4.24   installed         3.2 M
 openoffice.org-writer   i386       1:2.0.4-5.4.24   installed         6.7 M
 openoffice.org-xsltfilter  i386       1:2.0.4-5.4.24   installed         212 k
 orca                    i386       1.0.0-5.el5      installed         3.4 M
 perl-Archive-Tar        noarch     1.36-1.el5.rf    installed         112 k
 perl-Compress-Raw-Zlib  i386       2.008-1.el5.rf   installed         371 k
 perl-Compress-Zlib      noarch     2.008-1.el5.rf   installed          71 k
 perl-Crypt-PasswdMD5    noarch     1.3-2.el5        installed          12 k
 perl-Digest-HMAC        noarch     1.01-15          installed          11 k
 perl-Digest-SHA1        i386       2.11-1.2.1       installed          97 k
 perl-GD                 i386       2.35-2.el5       installed         450 k
 perl-GD-Barcode         noarch     1.15-1.2.el5.rf  installed          10 M
 perl-GD-Convert         noarch     2.13-1.el5.rf    installed          24 k
 perl-GD-Dashboard       noarch     0.04-1.2.el5.rf  installed          26 k
 perl-GD-Graph           noarch     1.43-1.2.el5.rf  installed         231 k
 perl-GD-Graph3d         noarch     0.63-2.2.el5.rf  installed          72 k
 perl-GD-SIRDS           noarch     0.02-1.2.el5.rf  installed          11 k
 perl-GD-SVG             noarch     0.28-1.el5.rf    installed          90 k
 perl-GD-Text-Util       noarch     0.86-1.2.el5.rf  installed          77 k
 perl-Glib               i386       1.162-1.el5.rf   installed         1.5 M
 perl-Gtk2               i386       1.162-1.el5.rf   installed          12 M
 perl-HTML-Parser        i386       3.56-1.el5.rf    installed         288 k
 perl-HTML-Tagset        noarch     3.10-2.1.1       installed          19 k
 perl-IO-Compress-Base   noarch     2.008-1.el5.rf   installed         138 k
 perl-IO-Compress-Zlib   noarch     2.008-1.el5.rf   installed         368 k
 perl-IO-Socket-INET6    noarch     2.51-2.fc6       installed          22 k
 perl-IO-Socket-SSL      noarch     1.12-1.el5.rf    installed         102 k
 perl-IO-Zlib            noarch     1.08-1.el5.rf    installed          25 k
 perl-Net-DNS            i386       0.61-1.el5.rf    installed         567 k
 perl-Net-IP             noarch     1.25-2.fc6       installed          81 k
 perl-Net-SSLeay         i386       1.32-1.el5.rf    installed         829 k
 perl-SVG                noarch     2.36-1.el5.rf    installed         202 k
 perl-Socket6            i386       0.19-3.fc6       installed          45 k
 perl-String-CRC32       i386       1.4-2.fc6        installed          12 k
 perl-URI                noarch     1.35-3           installed         246 k
 perl-libwww-perl        noarch     5.805-1.1.1      installed         807 k
 pidgin                  i386       2.3.1-0.el5      installed         2.3 M
 pirut                   noarch     1.2.10-1.el5.centos.1  installed         969 k
 planner                 i386       0.14-3           installed         5.8 M
 playground              i686       0.3-2.FC4.CLUB   installed          97 k
 playground-xmms         i686       0.3-2.FC4.CLUB   installed          11 k
 psutils                 i386       1.17-26.1        installed         203 k
 rhpxl                   i386       0.41.1-1.el5     installed         369 k
 rhythmbox               i386       0.9.5-8.el5      installed         6.3 M
 rpm-build               i386       4.4.2-47.el5     installed         2.0 M
 rsync                   i386       2.6.9-1.el5.rf   installed         594 k
 sabayon-apply           i386       2.12.4-5.el5     installed         1.6 M
 samba-client            i386       3.0.25b-1.el5_1.4  installed          12 M
 scrollkeeper            i386       0.3.14-9.el5     installed         1.5 M
 slrn                    i386       0.9.8.1pl1-1.2.2  installed         2.1 M
 sound-juicer            i386       2.16.0-3.el5     installed         2.4 M
 spamassassin            i386       3.2.3-1.el5.rf   installed         2.8 M
 stunnel                 i386       4.15-2           installed         220 k
 synaptics               i386       0.14.4-8.fc6     installed         110 k
 syslinux                i386       3.53-1.el5.rf    installed         1.7 M
 system-config-date      noarch     1.8.12-1.el5     installed         3.5 M
 system-config-display   noarch     1.0.48-2.el5     installed         786 k
 system-config-keyboard  noarch     1.2.11-1.el5     installed         193 k
 system-config-network   noarch     1.3.99-2.el5     installed         2.1 M
 system-config-printer   i386       0.7.32.5-1.el5   installed         645 k
 system-config-printer-libs  i386       0.7.32.5-1.el5   installed         812 k
 tomcat5-jsp-2.0-api     i386       5.5.23-0jpp.3.0.2.el5  installed         163 k
 tomcat5-servlet-2.4-api  i386       5.5.23-0jpp.3.0.2.el5  installed         250 k
 totem                   i386       2.16.7-1.el5     installed         5.0 M
 urw-fonts               noarch     2.3-6.1.1        installed         5.7 M
 vim-enhanced            i386       2:7.0.109-3.el5.3  installed         2.6 M
 vino                    i386       2.13.5-6.el5     installed         1.1 M
 vnc-server              i386       4.1.2-9.el5      installed         2.5 M
 wine                    i386       0.9.50-1.el5.rf  installed          0.0 
 wine-capi               i386       0.9.50-1.el5.rf  installed          97 k
 wine-cms                i386       0.9.50-1.el5.rf  installed         192 k
 wine-core               i386       0.9.50-1.el5.rf  installed          98 M
 wine-esd                i386       0.9.50-1.el5.rf  installed         151 k
 wine-jack               i386       0.9.50-1.el5.rf  installed          89 k
 wine-ldap               i386       0.9.50-1.el5.rf  installed         802 k
 wine-nas                i386       0.9.50-1.el5.rf  installed          87 k
 wine-twain              i386       0.9.50-1.el5.rf  installed         108 k
 wpa_supplicant          i386       1:0.4.8-10.1.fc6  installed         540 k
 xalan-j2                i386       2.7.0-6jpp.1     installed          10 M
 xchat                   i386       1:2.6.6-8.el5    installed         3.3 M
 xerces-j2               i386       2.7.1-7jpp.2     installed         6.9 M
 xml-commons             i386       1.3.02-0.b2.7jpp.10  installed          30 k
 xml-commons-apis        i386       1.3.02-0.b2.7jpp.10  installed         878 k
 xml-commons-resolver    i386       1.1-1jpp.12      installed         343 k
 xorg-x11-drivers        i386       7.1-4.1.el5      installed          0.0 
 xorg-x11-drv-acecad     i386       1.1.0-2.1        installed          11 k
 xorg-x11-drv-aiptek     i386       1.0.1-2          installed          27 k
 xorg-x11-drv-apm        i386       1.1.1-2.1        installed         142 k
 xorg-x11-drv-ark        i386       0.6.0-2.1        installed          18 k
 xorg-x11-drv-ast        i386       0.81.0-3         installed          42 k
 xorg-x11-drv-ati        i386       6.6.3-3.2.el5    installed         776 k
 xorg-x11-drv-calcomp    i386       1.1.0-1.1        installed          14 k
 xorg-x11-drv-chips      i386       1.1.1-2.1        installed         151 k
 xorg-x11-drv-cirrus     i386       1.1.0-2.fc6      installed          76 k
 xorg-x11-drv-citron     i386       2.2.0-1.1        installed          51 k
 xorg-x11-drv-cyrix      i386       1.1.0-4          installed          28 k
 xorg-x11-drv-digitaledge  i386       1.1.0-1.1        installed          14 k
 xorg-x11-drv-dmc        i386       1.1.0-2          installed          12 k
 xorg-x11-drv-dummy      i386       0.2.0-2.1        installed          14 k
 xorg-x11-drv-dynapro    i386       1.1.0-2          installed          11 k
 xorg-x11-drv-elo2300    i386       1.1.0-1.1        installed          12 k
 xorg-x11-drv-elographics  i386       1.1.0-1.1        installed          16 k
 xorg-x11-drv-evdev      i386       1:1.0.0.5-3.el5  installed          12 k
 xorg-x11-drv-fbdev      i386       0.3.0-2          installed          20 k
 xorg-x11-drv-fpit       i386       1.1.0-1.1        installed          12 k
 xorg-x11-drv-glint      i386       1.1.1-4.1        installed         286 k
 xorg-x11-drv-hyperpen   i386       1.1.0-2          installed          17 k
 xorg-x11-drv-i128       i386       1.2.0-4          installed          60 k
 xorg-x11-drv-i740       i386       1.1.0-2.1        installed          45 k
 xorg-x11-drv-i810       i386       1.6.5-9.6.el5    installed         598 k
 xorg-x11-drv-jamstudio  i386       1.1.0-1.1        installed         8.6 k
 xorg-x11-drv-joystick   i386       1.1.0-1.1        installed         7.1 k
 xorg-x11-drv-keyboard   i386       1.1.0-3          installed          27 k
 xorg-x11-drv-magellan   i386       1.1.0-1.1        installed          11 k
 xorg-x11-drv-magictouch  i386       1.0.0.5-2.1      installed         2.8 k
 xorg-x11-drv-mga        i386       1.4.2-6.el5      installed         161 k
 xorg-x11-drv-microtouch  i386       1.1.0-1.1        installed          16 k
 xorg-x11-drv-mouse      i386       1.1.1-1.1        installed          48 k
 xorg-x11-drv-mutouch    i386       1.1.0-2          installed          17 k
 xorg-x11-drv-neomagic   i386       1.1.1-2.1        installed          75 k
 xorg-x11-drv-nsc        i386       2.8.1-2.1        installed         322 k
 xorg-x11-drv-nv         i386       2.1.2-1.el5      installed         237 k
 xorg-x11-drv-palmax     i386       1.1.0-1.1        installed          14 k
 xorg-x11-drv-penmount   i386       1.1.0-2.1        installed          12 k
 xorg-x11-drv-rendition  i386       4.1.0-3.1        installed         105 k
 xorg-x11-drv-s3         i386       0.4.1-2.1        installed          57 k
 xorg-x11-drv-s3virge    i386       1.9.1-2.1        installed          80 k
 xorg-x11-drv-savage     i386       2.1.1-5.fc6      installed         141 k
 xorg-x11-drv-siliconmotion  i386       1.4.1-2.1        installed          88 k
 xorg-x11-drv-sis        i386       0.9.1-7          installed         598 k
 xorg-x11-drv-sisusb     i386       0.8.1-4.1        installed          77 k
 xorg-x11-drv-spaceorb   i386       1.1.0-1.1        installed          10 k
 xorg-x11-drv-summa      i386       1.1.0-1.1        installed          17 k
 xorg-x11-drv-tdfx       i386       1.2.1-3.1        installed          69 k
 xorg-x11-drv-tek4957    i386       1.1.0-1.1        installed          12 k
 xorg-x11-drv-trident    i386       1.2.1-3.fc6      installed         163 k
 xorg-x11-drv-tseng      i386       1.1.0-3.1        installed          52 k
 xorg-x11-drv-ur98       i386       1.1.0-1.1        installed          14 k
 xorg-x11-drv-v4l        i386       0.1.1-4          installed          15 k
 xorg-x11-drv-vesa       i386       1.3.0-8.1.el5    installed          25 k
 xorg-x11-drv-vga        i386       4.1.0-2.1        installed          21 k
 xorg-x11-drv-via        i386       0.2.1-9          installed         354 k
 xorg-x11-drv-vmmouse    i386       12.4.0-2.1       installed          18 k
 xorg-x11-drv-vmware     i386       10.13.0-2.1      installed          40 k
 xorg-x11-drv-void       i386       1.1.0-3.1        installed         7.3 k
 xorg-x11-drv-voodoo     i386       1.1.0-3.1        installed          28 k
 xorg-x11-font-utils     i386       1:7.1-2          installed         265 k
 xorg-x11-fonts-100dpi   noarch     7.1-2.1.el5      installed         3.3 M
 xorg-x11-fonts-75dpi    noarch     7.1-2.1.el5      installed         2.9 M
 xorg-x11-fonts-ISO8859-1-100dpi  noarch     7.1-2.1.el5      installed         1.0 M
 xorg-x11-fonts-ISO8859-1-75dpi  noarch     7.1-2.1.el5      installed         899 k
 xorg-x11-fonts-Type1    noarch     7.1-2.1.el5      installed         2.7 M
 xorg-x11-fonts-base     noarch     7.1-2.1.el5      installed         4.2 M
 xorg-x11-fonts-misc     noarch     7.1-2.1.el5      installed         2.6 M
 xorg-x11-fonts-truetype  noarch     7.1-2.1.el5      installed         888 k
 xorg-x11-server-Xnest   i386       1.1.1-48.26.el5  installed         3.7 M
 xorg-x11-server-Xorg    i386       1.1.1-48.26.el5  installed         8.2 M
 xorg-x11-xfs            i386       1:1.0.2-4        installed         111 k
 xsane-gimp              i386       0.991-4.el5      installed         617 k
 zenity                  i386       2.16.0-2.el5     installed         2.0 M

Transaction Summary
=============================================================================
Install      0 Package(s)         
Update       0 Package(s)         
Remove     289 Package(s)   
Basically, there are just too many packages in Linux that rely on Perl, and to remove Perl, you have to remove all of these packages. Some of the major ones in that list include the entire GNOME desktop environment, the entire OpenOffice suite, and the entire X Window Server itself. So, it's a lot easier to just keep the two versions of Perl side by side.

To prevent yum from modifying your installation of Perl, edit the file /etc/yum.conf with your favorite text editor and add the line:

/etc/yum.conf:
exclude=perl
That way, yum won't be tempted to update what it believes is your current version of Perl (which, on Red Hat Enterprise systems, yum isn't likely to upgrade to Perl 5.10 of its own free will anytime soon, so you'd be more likely to get a new stable release of 5.8, which would undermine your efforts to upgrade to 5.10).

Upgrade Complete!

Now that you have Perl 5.10 installed, you can start playing around with the new features. To that end, you can follow the link I mentioned up at the top of the page and click around to see how to get started with Perl 5.10.

2008/01/04
~Kirsle