I'm trying to install BugZilla on our server. The issue is that perl scripts of BugZilla define the path as /usr/bin/perl
, and my perl installation is located at /usr/local/bin/perl
.
I've had this issue while installing other applications as well, i had to manually edit the interpreter paths.
How do you handle situations like these?
EDIT: I just noticed we've got two copies of perl on the server, one in the standard location, on in /usr/local/bin/perl, but which perl
returns the former path.
Btw, here's the error I get when I run bugzilla's perl script
bash: ./checksetup.pl: /usr/bin/perl: bad interpreter: Permission denied
You can create a soft link using ln that links /usr/bin/perl to /usr/local/bin/perl
We do this in my environment: we leave the system perl in /usr/bin/perl, and install our own interpreter in /usr/local/bin/perl; this allows us to retain a reliable perl that we know OS updates won't blow away.
I'd say the easiest way to get around this issue is to sidestep the shebang line altogether and just invoke those scripts using the perl interpreter you actually want to have execute them:
/usr/local/bin/perl /path/to/someBugzillaScript.pl
That gives you control over your execution environment without having to make system-level changes to accommodate the Bugzilla package.