http://www.perlmonks.org?node_id=1214777

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

I use the DOS rshell command to start a Perl application. The argument for the command is C:\dir1\dir2\dir3\dir4\dirapp\perlapp.pl. The Perl application uses a library module which I want to store in the directory …\dirapp\myperl-lib. I get access to the library module by a Perl line

use myperl-lib::library_sub;

When I type ‘rshell C:\dir1\dir2\dir3\dir4\dirapp\perlapp.pl’ in an MSDOS window, the Perl application works as required.
When I call the rshell command from a 3rd party (none Perl based) application, rshell does not work and returns the error code 2 – which means “The system cannot find the file specified.”

Using diagnostic printing I have found that the Perl application fails on the use command.

If I add the Perl library into the Perl directory tree in which the perl.exe is stored (and used to run the Perl application) the rshell command works from the 3rd party application.

What do I have to do to get the application to use the Perl library stored in a directory used for the application?