> Would anybody tell me what's the difference
> between using ppm to install a module and
> downloading it and puting it in my site/lib/?

Yeah, it works properly and is easier.  On Unix,
modules are installed using 'make', which isn't
available on Windows.

If you look carefully, you can probably get ppm
to test modules before installing them - which
is a good idea.  On Unix you would do that by:

perl Makefile.PL
make
make test

Most of the time copying into the right lib
folder is enough, but sometimes more is
required to make them work... e.g. download
the other modules that are required to make
it work.

> By the way, why there is a folder call LIB
> while other one is Site/Lib , but they just
> put modules too...... any difference ?

Only speculating:

The lib folder holds the standard modules
distributed with perl, whilst site/lib has
those that have been added either by yourself
or your perl distribution.

On Unix, placing perl on a shared filesystem
is typical, but then it will be read only.
Therefore, you require another directory that
perl looks in that you could install your
own stuff.

--- Unix filesystems ---

To know how that works, you need to know that
Unix doesn't have drive letters, rather it
uses a unified filesystem starting at /

Say I have two partitions /dev/hda1 and
/dev/hda2.  hda1 is to be my main partition,
so I mount it at root:

mount /dev/hda1 /

giving me (say):

/usr/bin
/usr/lib/perl5/site
/usr/lib/perl5/5.005_03
/tmp
/var
....

Now, if my /usr/lib/perl5/site is empty but
my other partition contains files starting
at this point, e.g.

/Net/IRC.pm
/IPC/Open3.pm
....

then I could mount it at /usr/lib/perl5/site
by doing:

mount /dev/hda2 /usr/lib/perl5/site

giving:

/usr/bin
/usr/lib/perl5/site/Net/IRC.pm
/usr/lib/perl5/site/IPC/Open3.pm
/usr/lib/perl5/5.005_03
/tmp
/var
....

Now, two things...

1. /dev/hda1 and /dev/hda2 are local to the
machine, but on Unix that could just as
easily be a filesystem on a server.  Useful
if you have many computers you need to keep
upto date.

2. The adminstrator of the network version
of perl can update it, happy in the knowledge
that you won't suddenly lose your files or
have your scripts broken (probably).

Note that the network versions of the libs
also override the site libs - a small
security feature preventing someone from
installing a bad/dangerous module in your
lib directory.

Anyway, I hope that helps understand why
silly things like making two lib
directories is done.  Don't worry if you
skipped the Unix filesystem bit, it's only
background reason/interest.

Take care,

Jonathan Paton

__________________________________________________
Do You Yahoo!?
Everything you'll ever need on one web page
from News and Sport to Email and Music Charts
http://uk.my.yahoo.com

-- 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to