Skip to content

Commit

Permalink
AIX updates thanks to Nathan Vonnahme
Browse files Browse the repository at this point in the history
git-svn-id: http://svn.perl.org/modules/dbd-oracle/trunk@2462 50811bd7-b8ce-0310-adc1-d9db26280581
  • Loading branch information
timbo committed Jan 31, 2006
1 parent 703050b commit 9df2e31
Show file tree
Hide file tree
Showing 3 changed files with 80 additions and 8 deletions.
2 changes: 1 addition & 1 deletion Changes
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
Changed tests to use ORACLE_DSN or DBI_DSN env vars if defined thanks to Jill Vogel.
Updated README.vms re logical name tables thanks to Jakob Snoer.
Removed README.utf8 since the topic was covered better in the main docs.
Updated README.aix thanks to Stephen de Vries.
Updated README.aix thanks to Stephen de Vries and Nathan Vonnahme.
Updated README.macosx thanks to Stephen de Vries.
Renamed README.*'s to add .txt suffix to make life easier for some.

Expand Down
9 changes: 5 additions & 4 deletions Makefile.PL
Original file line number Diff line number Diff line change
Expand Up @@ -753,10 +753,11 @@ print "\n";
# --- display extra notes and warnings

if ($os eq 'aix' and $osvers >= 4 and $Config{cc} ne 'xlc_r') {
print "\n\n";
print "WARNING: You will may need to rebuild perl using the xlc_r compiler.$BELL\n";
print " You may also need do: ORACCENV='cc=xlc_r'; export ORACCENV\n";
print " Also see the README about the -p option\n";
print "\n";
print "WARNING: You will may need to rebuild perl using the xlc_r compiler.\a\n";
print " The important thing is that perl and DBD::Oracle be built with the same compiler.\n";
print " You may also need to: ORACCENV='cc=xlc_r'; export ORACCENV\n";
print " Also see README.aix for gcc instructions and read about the -p option.\n";
sleep 5;
}

Expand Down
77 changes: 74 additions & 3 deletions README.aix.txt
Original file line number Diff line number Diff line change
@@ -1,7 +1,10 @@
Compiler: all these examples use xlc_r, except the first which uses Visual Age 7
and the second which uses GCC.

--------------------------------------------------------------------------------------
DBD::Oracle AIX-specific README


Using Visual Age 7 C Compiler
======================================================================================

- Oracle 9i is only certified as a 64-bit application on AIX 5L (5.1,5.2,5.3) with 32-bit support;
in other words, there is no 9i "32-bit" Oracle client
- Oracle 10g is certified as both a 64-bit application and a 32-bit Oracle client
Expand Down Expand Up @@ -32,6 +35,69 @@ I've tested the basics of the DBD-Oracle and it seems fully functional.
Stephen de Vries
[email protected]



Using gcc C Compiler
======================================================================================



DBD::Oracle with gcc and Oracle Instant Client on AIX
--------------------------------------------------------------------------------------
Nathan Vonnahme Dec 15 2005, 4:28 pm Newsgroups: perl.dbi.users
See: http://groups.google.com/group/perl.dbi.users/msg/0bd9097f80f2c8a9
[ with updates 1/31/2006 - DBD::Oracle 1.17 doesn't need makefile hacking
to work with instantclient on AIX ]


Yes! It eluded me last year but I finally got DBD::Oracle working on an
AIX machine using gcc. Here's the short version:

First I had to recompile perl with gcc, using
sh Configure -de -Dcc=gcc
This apparently built a 32 bit perl, someday I will try getting it to go
64 bit.

I was then able to install and build DBI 1.50 with the CPAN shell.

I downloaded the base and sdk packages of the Oracle Instant Client for
AIX -- first I tried the 64 bit but that didn't work with my 32 bit perl
-- the 32 bit version (still at 10.1.0.3) did the trick. I unzipped
them and moved the dir to /usr/local/oracle/instantclient10_1 and made a
symlink without the version at /usr/local/oracle/instantclient , then
set:

export ORACLE_HOME=/usr/local/oracle/instantclient
export LIBPATH=$ORACLE_HOME



Oracle wasn't providing the sqlplus package for 32 bit AIX so I
explicitly told Makefile.PL the version:

perl Makefile.PL -V 10.1

make

My test databases were on other machines so I set these environment variables
to get the tests to run:

export ORACLE_DSN=DBI:Oracle://host/dbinstance
export ORACLE_USERID="user/password"

make test
make install


NOTE: I have an older full version of Oracle on this machine, and the
ORACLE_HOME environment variable is normally set to point to that, so
my perl scripts that use DBD::Oracle have to make sure to first set
$ENV{ORACLE_HOME}='/usr/local/oracle/instantclient';





--------------------------------------------------------------------------------------
The following setup worked to build on AIX 5.2:
gcc-3.3.2 (32-bit) (configure opts [ --with-ld=/usr/ccs/bin/ld --with-as=/usr/ccs/bin/as])
Expand All @@ -54,6 +120,11 @@ This setup worked with 8.1.7 w/32 bit support, and with 9.2.0 w/ 32-bit support.
--Adrian Terranova
[email protected]




Using xlc_r C Compiler
======================================================================================
--------------------------------------------------------------------------------------
From: Rafael Caceres <[email protected]>
Date: 22 Jul 2003 10:05:20 -0500
Expand Down

0 comments on commit 9df2e31

Please sign in to comment.