I am building a SLES 11 SP2 server for a developer. He has an application that uses apache to invoke perl scripts via a cgi-script handler. Mmy problem is that he wants to use perl 5.16.2 and has installed it in /opt. The only version available from Novell, via the YaST Sortware Management application, is 5.10.0-18.104.22.168.
For a SLES 10 server, I installed a more current version of perl than was shipped with SLES and replaced it in the default path. When perl was invoked by any user, the more current version was invoked. This caused virtually all YaST components to fail with various errors. Thus, I couldn't install any maintenance packages (I was a newbie at the time and didn't know about zypper). I also didn't realize that my system was no longer supportable by Novell. I need to retain supportablility for the system, the developer will need to support his own stuff.
How can I set up the system so that the developer's application can access perl 5.16.2 but all other users will access perl 5.10? I thought of updating the PATH via a .profile but he says that this won't work. His comments are in the following paragraph.
"Apache doesn't call perl directly. It uses the cgi-script handler which just runs the .pl file as a shell script. It's bash/sh that picks up the "#! /usr/bin/perl" line in the .pl file. It won't accept "#! perl" to use the PATH."