in reply to Re^3: using perl installed in another computer
in thread using perl installed in another computer

Hello,

Thanks for the reply. So, each remote computer would need a perl installed? Since the config.pm file exists in C:\Perl\lib directory as you had mentioned.

Also, the following variables seem to need changing to the drive the main computer is mapped to. Please let me know if I am missing anything:

archlibexp='C:\Perl\lib' installarchlib='C:\Perl\lib' installprivlib='C:\Perl\lib' libpth='"C:\Program Files\Microsoft Visual Studio .NET 2003\SDK\v1.1\L +ib\" "C:\Perl\lib\CORE"' prefix='C:\Perl' privlibexp='C:\Perl\lib' archlib='C:\Perl\lib' bin='C:\Perl\bin' binexp='C:\Perl\bin' sitearch='C:\Perl\site\lib' sitearchexp='C:\Perl\site\lib' sitebin='C:\Perl\site\bin' sitebinexp='C:\Perl\site\bin' sitelib='C:\Perl\site\lib' sitelib_stem='' sitelibexp='C:\Perl\site\lib' siteprefix='C:\Perl\site' siteprefixexp='C:\Perl\site' perlpath='C:\Perl\bin\perl.exe'

Thanks.

Replies are listed 'Best First'.
Re^5: using perl installed in another computer
by nobull (Friar) on Mar 31, 2005 at 07:24 UTC
    So, each remote computer would need a perl installed? Since the config.pm file exists in C:\Perl\lib directory as you had mentioned.
    No, on Win32, the location C:\perl\lib is not harwired into perl.exe. Instead perl.exe infers the default @INC (Perl module search path) at runtime from the location of perl.exe.

    Actually even if the location were hardwired it would be patched at install time so it would still be sufficient to simply install the .MSI into the shared drive using the mapped drive letter.

      Thank you for the reply

      Could you repeat that in english? :)

      So, I don't need perl installed in the remote computers? I understood that in the remote computers, I would need to map drive U: (for example) to the main computer.

      Then, I will need to install .MSI file on the main computer? Where can I get a .MSI?

      Thanks

        So, I don't need perl installed in the remote computers? I understood that in the remote computers, I would need to map drive U: (for example) to the main computer.
        Then, I will need to install .MSI file on the main computer?
        Yes. But install it in U:\Perl not in C:\Whatever\is\shared\as\U\Perl. You may do this by running through the installation procedure on any computer that has U: mapped (provided you have write permission!).
        Where can I get a .MSI?
        Sorry, I assumed you were already using Perl on Windows and ~99% people who install Perl on Windows do so using the MSI from ActiveState. If you installed Perl one of the other possible ways then you should equally be able use that method too.
Re^5: using perl installed in another computer
by Tanktalus (Canon) on Mar 31, 2005 at 15:08 UTC

    As nobull points out, you can simply install to the shared drive directly, and then everything would be updated automatically.

    Let's say you decided that everyone would mount all shared utilities on drive "U" (for utility). You could just change all "C:\Perl"s to "U:\Perl" and everything should work fine after that. (As nobull also kind of pointed out, most things would work fine without this change, but debugging why your script doesn't work with use diagnostics on a remote machine is painful - trust me. So I'm trying to ensure you don't have that problem. Other problems, perhaps, but not the same ones I've had ;->). Something like this should work, given that you started with perl on drive C, and follow the above example:

    perl -pi.bak -e 's/C:\\Perl/U:\\Perl/g' Config.pm
    Your favourite editor probably has a search&replace function, too. But when you have perl already, why not take advantage of it ;-)

      Hello there!

      I am implementing your suggestion and noticed that there were a couple of config.pm's in the perl directory.

      Eg: C:\Perl\Lib C:\Perl\Lib\CPAN C:\Perl\lib\Encode C:\Perl\lib\Net C:\Perl\site\lib etc...

      Which config.pm file would need to be updated? all?

      Thanks in advance.

        I only ever updated the one in perl\lib - the CPAN, Encode, and Net directories have configurations for themselves which should be ok. I don't have one in perl\site\lib - so that may need to be kept in sync with the one in perl\lib, if you need to keep it at all (which I doubt).

        And please keep the correct capitalisation: it's "Config.pm" not "config.pm" - it's a bad idea to treat these filenames as case insensitive since perl treats the contents case sensitively. It'll just make a mess in one's head to ignore the case. As others have pointed out, "use config" may not end up crashing perl, but it usually won't work as intended either.