m3LLow has asked for the wisdom of the Perl Monks concerning the following question:

* I am wondering if there is any way to site install DBD::CSV module <with depending modules: File::Spec,Text::CSV::XS,SQL::Statement> withuot compiling it <access to gcc is not allowed on that server;-(>.
* Maybe it is possible to compile this module on other server?

Oh! Almost have forgotten! The action is on TurboLinux server. -- m3LLow

Replies are listed 'Best First'.
Re: DBD::CSV site installation
by tadman (Prior) on Jul 24, 2002 at 09:28 UTC
    If the platforms are similar there is a good chance this will work. The issues arise when you're using two different glibc libraries, or even worse, two different processors. TurboLinux is one thing, the second question is what version. Sometimes you can check by doing this:
    % ldd `which perl`
    That will give you an idea what libc libarary you are using, actually, it will give you a list of all libraries that 'perl' uses, libc being one of them. Mine reads libc.so.6, for example.

    Build the modules on your prep box, and install them, preferably in a location other than your main Perl installation directory. Round up this, and fire it over to your other box. Remember, you can run your own modules if you either:
    use libs '/my/lib/dir';
    Or in your bash shell environment:
    export PERL5LIB=/my/lib/dir
    Remember, you can't use something without compiling it. If you're lucky, you can always use it pre-compiled. If you need to make your own, you can always do this for each module:
    % perl Makefile.PL prefix=/my/lib/dir % make && make install
    This means they are installed into a different location. If this location is your home directory, you usually don't need root privileges. Then port it over:
    box1% cd /my/lib box1% tar cvzf mylibs.tar.gz dir box1% scp mylibs.tar.gz box2: box2% cd /my/lib box2% tar xvzf ~/mylibs.tar.gz
    As a final note, the versions of 'perl' must match. You can't build on 5.8.0 and port to 5.6.1 or 5.005_03. If yours is off-kilter, grab a legacy version and build with it.

    This is a fairly straightforward, yet awkward thing, and is best avoided. For example, if you have the luxury, you could switch to an environment that was less fascist.