Forcing Specific Version of a module to be used from different location.

Posted on 2003-11-04
Last Modified: 2010-03-04
Question Title: Forcing module version to be used
Author: sstouk
Points: 125
Date: 11/04/2003 12:49PM EST

The OS has a module with an older version. which is version 3.09 (HTML::Entity)
I downloaded version 3.16
The application I develop needs a version above 3.15, so the one I've got is OK
It is a web server where I do not have admin rights to put the updated into the Perl path and substitute the old one.
All the modules I need I usually install under the cgi-bin/ web folder and it works just fine, recognizing modules that are not present on the web server.
I need a way to tell my application to use not from the Perl default location, but from the cgi-bin/HTML/ location.
So that the command:
use HTML::Entity
would get the file from cgi-bin/HTML/Entity and not from c:\Perl\lib\..... etc

Any ideas?
Question by:sstouk
  • 3
  • 2

Accepted Solution

arjanh earned 125 total points
ID: 9680562
You can let perl first look in your cgi-bin directory, and only thereafter in the system dirs like this:

unshift (@INC, "cgi-bin/"); # Prepend a directory name
use HTML::Entity;

Expert Comment

ID: 9681382
for you, this would work (it's the same mechanism as the post by arjanh but that post probably won't work for you because the directory is not right):

use lib '.'; # cgi-bin won't work in your case I think
use HTML::Entity;

Author Comment

ID: 9681487
Does this just adds or reverses the order of search or completely substitutes it?
I do not want to substitute, just to reverse.
I think that unshift (@INC, "cgi-bin/"); # Prepend a directory name
Is adding the initial path to search for, what about
use lib '.'; # cgi-bin won't work in your case I think
unshift (@INC, "."); # Prepend a directory name
Works perfectly so as the:
use lib '.'; # cgi-bin won't work in your case I think
Basically both of you answered the question correctly and without comment of inq123 suggestion posted by arjanh would really not work for me, I tried.
But I got an idea anyway.

I would like to split the points if possible I will see if I can try, if not, I have to assign point to whomever answered first.

thanks alot.


How to run any project with ease

Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
- Combine task lists, docs, spreadsheets, and chat in one
- View and edit from mobile/offline
- Cut down on emails


Author Comment

ID: 9681502
There was no option to split the points. Sorry inq123.

Author Comment

ID: 9681550
Too bad I learned how to split points just now :(

Expert Comment

ID: 9681605
In fact, if no option to split, then you should accept my comment because mine worked for you.  Grading guide suggests that you accept the first working solution.  As I pointed out already, although my solution is the same mechanism as previous one, mine should work for you but his won't.

But well, it's OK.

Featured Post

Enabling OSINT in Activity Based Intelligence

Activity based intelligence (ABI) requires access to all available sources of data. Recorded Future allows analysts to observe structured data on the open, deep, and dark web.

Join & Write a Comment

Many time we need to work with multiple files all together. If its windows system then we can use some GUI based editor to accomplish our task. But what if you are on putty or have only CLI(Command Line Interface) as an option to  edit your files. I…
A year or so back I was asked to have a play with MongoDB; within half an hour I had downloaded (,  installed and started the daemon, and had a console window open. After an hour or two of playing at the command …
Explain concepts important to validation of email addresses with regular expressions. Applies to most languages/tools that uses regular expressions. Consider email address RFCs: Look at HTML5 form input element (with type=email) regex pattern: T…
This tutorial demonstrates a quick way of adding group price to multiple Magento products.

706 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

15 Experts available now in Live!

Get 1:1 Help Now