On Thu, 2003-12-11 at 16:47, Perrin Harkins wrote:
> On Wed, 2003-12-10 at 22:42, Kevin Old wrote:
> > I am able to setup a DSN and use it successfully via a "regular" perl
> > script, but when I try to have Apache::DBI connect to it in my
> > startup.pl I get a message in the log stating that the DSN wasn't
> > defined in the unixODBC DM.  This is correct, but why is mod_perl using
> > the unixODBC DM instead of the iODBC DM
> 
> I don't much about the ODBC stuff you're referring to, but make sure
> your environment variables are really getting set.  They will not be
> passed to mod_perl unless you put PerlPassEnv directives for them in
> httpd.conf.  Try dumping %ENV in your script to see if they are set or
> not.

Perrin,

Thanks for your reply.  I'm explicitly setting them in my startup.pl as
below....isn't that the same as the PerlPassEnv directive?

#!/usr/bin/perl
use DynaLoader();
use warnings;
use strict;

# Extend @INC if needed
#use lib qw(/dir/foo /dir/bar);
use lib qw(/var/www/html/mason/lib);
use lib qw(/var/www/html/mason/hrtime/lib);


use vars qw($dbh %session $sid);


#Shell ENV vars for Openlink ODBC driver
$ENV{ODBCINI} = "/usr/openlink/bin/odbc.ini";
$ENV{ODBCINSTINI} = "/usr/openlink/bin/odbcinst.ini";
$ENV{OPENLINKINI} = "/usr/openlink/bin/openlink.ini";
my $tmppath = $ENV{PATH};
$ENV{PATH} = "/usr/openlink/bin:/usr/openlink/samples/ODBC:$tmppath";
$ENV{LD_LIBRARY_PATH} = "/usr/openlink/lib";
$ENV{LIBPATH} = "/usr/openlink/lib";
$ENV{SHLIB_PATH} = "/usr/openlink/lib";
$ENV{OPL_LOCALEDIR}="/usr/openlink/locale";
$ENV{ODBCHOME} = "/usr/openlink/odbcsdk";

[rest of startup.pl]

Any ideas?

Thanks,
Kevin
-- 
Kevin Old <[EMAIL PROTECTED]>


-- 
Reporting bugs: http://perl.apache.org/bugs/
Mail list info: http://perl.apache.org/maillist/modperl.html

Reply via email to