Web Apps Since 2004.

Is your website boring?  Kick it up a notch.  Encodable apps easily drop into your website to make it modern, fun, and interactive, with features like file uploads, user accounts, paid subscriptions, protected pages, live chat, visitor logging, mailing lists, and more.
All Encodable apps include:
• Easy setup
• Lifetime license
• Free tech support
• Full customizability

How To Install Perl Modules

When You Own or Control the Whole Server

(For other situations, see the Perl Modules main page.)

If you're trying to run a perl program and you get an error about a missing module (for example, "LWP/UserAgent.pm") then you just need to install that module.  The slash becomes a double-colon, and the .pm is assumed, so in that example, you'd install "LWP::UserAgent".  Here's how.

For Mac OS X
For Windows
For Linux
Issues With Multiple Perl Versions

Mac OS X Users:

The following command should do it:

sudo cpan <module-name>

For example, to install the DBI.pm module:

sudo cpan DBI

The first time you use the cpan command, it'll ask you a bunch of configuration questions, but you can accept the default values for most of them.

Windows Users:

ActivePerl comes with a program called ppm or ppm3 that you can run from the command-line.  It will give you a "ppm>" prompt, at which you can type "search <module-name>" to find the exact name of the module you want, and then "install <module-name>" to install it.  Or, in newer versions of ppm, it will launch a graphical interface where you can search for and install modules by point-and-click.  Note: if you want a Perl module whose version in ppm is older than the current version, you can install the module from CPAN directly.

Linux Users:

Run this command:

sudo perl -MCPAN -e shell

The first time you run it, you'll have to say y or n to a bunch of configuration questions, but eventually you'll get a cpan prompt, at which you can type:

cpan> install <module-name>

Alternately, you can install a package non-interactively by just running:

sudo perl -MCPAN -e 'install <module-name>'

And remember, in "module-name", use double-colons (::) in place of slashes (/), and don't type the .pm at the end.

Note that sometimes a module doesn't pass all of the tests that run during the build stage, but this is usually OK.  However, it will then refuse to install the module, so you'll have to install it with cpan> force install <module-name> or at the shell prompt sudo perl -MCPAN -e 'force install <module-name>'.

Also note, if it doesn't seem to do anything when you try to install a module, and/or the connections just keep timing out or otherwise failing, type o conf urllist at the cpan prompt, which will show you which URLs it's using.  You can add new URLs like this:

o conf urllist unshift ftp://theoryx5.uwinnipeg.ca/pub/CPAN/
o conf urllist unshift ftp://ftp.crc.ca/pub/CPAN/
o conf urllist unshift ftp://cpan.mirror.smartworker.org/pub/CPAN
o conf urllist unshift ftp://cpan.chebucto.ns.ca/pub/CPAN/

Issues With Multiple Perl Versions

Some servers have multiple Perl installations, which can cause confusion when attempting to install/use Perl modules, because modules generally only install to one Perl installation at a time.  So for example, if you have one Perl installation in /usr/bin and another in /opt/local/bin, and your module gets installed into one of those locations whereas your script is using the other one, then your script won't see the module.  There are a few ways to solve this.

One solution would be to edit the first line of your Perl script, changing it from, say, #!/usr/bin/perl (the most common) to #!/opt/local/bin/perl, assuming of course that /opt/local is where your Perl module got installed.  (On Mac and Linux systems, use the command "find / -name Foo.pm" to locate the Foo.pm module on your system.)  This means your script will be executed using a different version of Perl, which shouldn't be a problem unless it's really outdated, or if this version is missing other Perl modules that are present in the version you were originally using, etc.

Another solution is to tell your Perl script to look in a particular location for the module.  Using the find command in the previous paragraph, say you discover that your module is installed in the /opt/local/lib/perl5/site_perl/5.8.9 directory; then, you'd add this line near the top of your Perl script:

use lib '/opt/local/lib/perl5/site_perl/5.8.9';

Depending on how close the version numbers are between your script's version of Perl and the module's version, this method may or may not work.

A third solution would be to simply install the Perl module into the Perl installation where your script is trying to find it.  If you've got two different Perl installations, then you've got two different cpan commands, and the one you choose will determine which Perl installation receives the module.  So instead of using the command "cpan Module::Name" to install the module, use the full path, e.g. "/usr/bin/cpan Module::Name" or "/opt/local/bin/cpan Module::Name", each of which will install the module into its respective Perl installation.

If That Doesn't Work...

Please contact us for more help.

Shopping Cart

Client Quotes

FileChucker is a great drop-in solution for file uploads, and worth every penny of its very reasonable cost.  Encodable's support is excellent to boot.
– Loren A.
I just want to say you guys really stand alone in that you have a quality product and you provide genuine customer service.  It's sad but those qualities are seldom found separately, much less together.  Thanks again for your time and help.
– Alex S.
Thank you VERY much for all of your help.  You've really impressed me.  We have support agreements for other software that costs thousands of dollars / year (just for the support), and most of them aren't as helpful as you have been.
– Keith Y.
Why didn't I just do this from the get-go?  So much easier.  Thanks for your work.  FileChucker makes my work easier.
– Dominic M.
The work, the thought and the organization you put into this app is incredible.
– Bruce C.
Just one word: Fantastic.  10-minute job to plug FileChucker into my app, and it now works a treat.  It's through the hard work by people like yourselves that make my job so much easier.  Congratulations on an outstanding product... Many many thanks.
– Sean F.
Do you know how rare it is to have a "canned" shopping cart that can easily do complex pricing options on a single item?  Basically, they don't exist!  I have looked.  Everywhere!  And the few that might even come close to CornerStore's functionality cost a fortune!
– Tashina P.
You've done a wonderful job with FileChucker and UserBase, and they have made a big difference to how our website runs.
– Nicholas H.
Thanks again for a great product and great support - beyond expectations.
– Greg S.
Nice script, it's saving the day on our project.
– Aaron W.
FileChucker is working great...  Clients love it.  Vendors love it.  We love it.
– Gerry W.
FileChucker is helping drive the backend of several high profile entertainment sites for people like Shania Twain and Dolly Parton.  We're also using it to drive backend file uploads for a multi-billion dollar banking institution.  It's a great product.  We've tried other "chucking" upload solutions with progress bars using flash and php, but nothing works as reliably as FileChucker.
– Michael W.
I just installed the demo of your product and got it up and running in no time.  I searched high and low for a decent login script and thank God I found yours.
– Adrian F.
Our members think your software is fantastic...  I would recommend your software and your company to anyone.  Thanks for all your help.  It has been a pleasure dealing with you.
– Tommy A.
I just wanted to say that yours is the first product that I've tested so far that hasn't failed on handling uploads.  This is going to work for a print company, so they are handling nothing but large files and all the other solutions I've tried so far have not been reliable.  So far yours has been 100% successful in my tests.
– Kevin H.
The amount of customization in the program is incredible.  I was able to integrate it into my existing page layout relatively simply.  I was also able to easily customize the look/feel to match the current site.
– Jason M.
I want to thank you for your efforts on Userbase. It has become an integral part of our business and has allowed us to branch out and begin using automation on a lot of our processes. Userbase has become the gateway to advancement for our company's processes for our clients and employees.
I looked all over trying to find a simple cgi script.  I found that FileChucker was by far the best.  If you have issues with your hosting service's php.ini max upload size then this is the way to go.  Looking forward to future enhancements.
– Bob C.