Now: Insecure dependency. Was: Solaris 10 + Apache 2 + mysql + DBD

Well, I managed to fix this issue.

As it turns out I had a second DBD library set and it was attempting to
use the “wrong” one. So I managed to “fix” that, but moving the
unwanted of the two library sets.

Having got this solved I actually managed to start Apache, and log in to
the RT interface. However…

I then did a system reboot, to test that Apache would automatically
start on boot, and it did not.

When I investigated the logs for Apache I saw the following in the
error_log:

[Thu Nov 10 16:51:45 2005] [error] Insecure dependency in unlink while
running with -T switch at /opt/csw/share/perl/5.8.7/File/Path.pm line
267.\nCompilation failed in require at (eval 5) line 1.\n [Thu Nov 10
16:51:45 2005] [error] Can’t load Perl file: /opt/rt-3.5.5/bin/webmux.pl
for server portal01.mel.cbssoc:0, exiting…

I have read the wiki, searched the mail list. Unfortunately this almost
all makes reference to fastcgi, but I am using mod_perl2. I have tried
changing the User and Group in Apache, and this didn’t work.

The configuration is still as it is below.

Does anyone have any thoughts on this?

Thanks heaps.

BenRFrom: rt-users-bounces@lists.bestpractical.com
[mailto:rt-users-bounces@lists.bestpractical.com] On Behalf Of Ben
Robson
Sent: Wednesday, 9 November 2005 4:13 PM
To: rt-users@lists.bestpractical.com
Subject: [rt-users] Solaris 10 + Apache 2 + mysql + DBD

Hi all.

I am working on getting RT working on a Solaris 10 x86 system using
Apache 2, mod_perl2 and Mysql.

When I start Apache 2 it fires up fine. However as it accepts a
connection I get the Apache 2 clean install test page and the following
log entry shows up in error_log:

[Wed Nov 09 15:58:58 2005] [error] [client an.ip.address] DBD::mysql
initialisation failed: Can’t locate object method “driver” via package
"DBD::mysql" at /opt/csw/lib/perl/csw/DBI.pm line 747.\n\nPerhaps the
capitalisation of DBD ‘mysql’ isn’t right. at
/opt/csw/share/perl/site_perl/DBIx/SearchBuilder/Handle.pm line 108\n

The following is where my DBD.pm perl module instances are located:

/opt/csw/share/perl/site_perl/DBIx/DBSchema/DBD.pm

/opt/csw/lib/perl/csw/DBI/DBD.pm

In both cases I have tried removing one and then the other in case (long
shot) there was some interference.

The RT section of httpd.conf reads like:

ServerName a.url.com.au

DocumentRoot /opt/rt3/share/html

AddDefaultCharset UTF-8



PerlModule Apache2 Apache2::compat



PerlModule Apache2 Apache::DBI

PerlRequire /opt/rt3/bin/webmux.pl



<Location>

    SetHandler perl-script

    PerlHandler RT::Mason

</Location>



RedirectMatch permanent (.*)/$ http://fsck.com$1/index.html

http://fsck.com$1/index.html

The MySQL database is located on another machine, but I have confirmed
that this is accessible using the local mysql client and have confirmed
that the mysql access credentials are correct in the RT configuration.

As some of you may have worked out, I am using the BlastWave Solaris
packages, as this has yielded the best result so far. I am using their
Perl, Apache2, Mysql4, gcc3 and perl modules where available. All other
modules have been installed via CPAN.

So, with all this in hand, does anyone have any thoughts as to why the
"driver" object method might not be getting found?

Thanks,

BenR