My Solaris setup has only got one oci.h in rdbms/public as does my
pretty much out of the box Windows installation.
Martin
Tim Bunce wrote:
On Wed, Nov 24, 2004 at 01:39:53PM +0200, Doru Petrescu wrote:
... Oracle 10.1.0.3 ...
in the end it turns out there are TWO oci.h files one in rdbms/demo and
one in rdbs/public
Can anyone else with access to Oracle 10.1 confirm if they've got
two oci.h files?
[Note that you may not get the same failure even if you do, as
currently the order of the header file directories is not fixed.]
release timestamp from the header of the file:
rdbms/public: oci.h 06-apr-2004.17:10:59
rdbms/demo: oci.h 23-jan-2002.01:46:43
description from the header of the file is identicall to both of them:
so, I am not sure if I got an alien file somehow from some old oracle
version, as everything else worked perfectly.
anyway here is the quick fix, if anyone else get into the same problem:
1. run perl Makefile.PL
2. run make
<---- you get the error
3. edit Makefile
4. locate the INC= line at the start of the file
5. make sure the search path contains first a "..../rdbms/public" and
only THEN ".../rdbms/demo" (switch places)
6. run make again
7. run make test and make install if all is OK
Does making this change to Makefile.PL fix it?
@@ -1300,9 +1300,10 @@
my $dir = $File::Find::dir;
$dir =~ s:^\Q$OH/::;
$h_dir{$dir} = $_;
- $h_file{$_} = $dir;
+ $h_file{$_} ||= $dir; # record first one found
print "Found $dir/$_\n" if $::opt_d;
- }, "$OH/rdbms",
+ }, "$OH/rdbms/public",
+ "$OH/rdbms",
"$OH/plsql", # oratypes.h sometimes here (eg HPUX 11.23 Itanium Oracle
9.2.0)
);
@h_dir = keys %h_dir;
One day (soon, I'm told) they'll get the SDK files added to their
Instant Client and these headaches will be greatly reduced.
Tim.