perl.HOWTO

This is the script that should be run on Makefile.PL
it will achieve that you don't requires access to perl install dir
it will place it in your $HOME/lib and $HOME/man

cpanmaker shell script

#!/bin/sh
what="Makefile.PL"
if [ "${1}" != "" ];then
  what=$1
fi

perl $what INSTALLDIRS=site \
INSTALLSITELIB=$HOME/lib/perl \
INSTALLSITEARCH=$HOME/lib/perl/arch \
INSTALLARCHLIB=$HOME/lib/perl/ \
INSTALLMAN1DIR=$HOME/man/man1 \
INSTALLMAN3DIR=$HOME/man/man3

So than it goes
cpanmaker
make
make install

special cases

Postgres Module
Makefile.PL customized for RedHat

use ExtUtils::MakeMaker;
# See lib/ExtUtils/MakeMaker.pm for details of how to influence
# the contents of the Makefile that is written.
WriteMakefile(
    'NAME'	=> 'Postgres',
    'VERSION_FROM' => 'Postgres.pm', # finds $VERSION
    'LIBS'	=> ['-L/var/lib/pgsql -lpq'],
    'DEFINE'	=> '',     # e.g., '-DHAVE_SOMETHING' 
    'INC'	=> '-I/usr/include/pgsql',
    'MYEXTLIB' 	=> ' /usr/lib/libpq.so.1',
              dist => {
                       SUFFIX => 'gz',
                       COMPRESS => 'gzip -9',
                      },
);


Modules uninstall
go to dir where is file .packlist
in my case 
cd /usr/lib/perl5/site_perl/5.005/i386-linux/auto/DBD/Empress
create such file call it uninstall.pl

#!/usr/bin/perl -w
use ExtUtils::Install; 


uninstall("./.packlist",1);

then type ./uninstall.pl and that is it

or

perl -MExtUtils::Install -e 'uninstall (".packlist",1);'

it is also good to clean perlocal.pod file in my case
cd /usr/lib/perl5/5.00503/i386-linux
vi perllocal.pod   and delete the shit

You can always see what you have installed so far with this
perldoc perllocal.pod