On Thu, Sep 25, 2003 at 12:39:05PM +0200, Steffen Goeldner wrote: > Steffen Goeldner wrote: > > > > [...] > > > > I try to find those symbols and the library ... > > Thanks to Andy Hassall, I found the symbols in orasql8.dll. > I did not install Pro*C and have a $ORACLE_HOME/precomp > but no $ORACLE_HOME/precomp/lib (and no orasql8.lib).
Er, so how did you find the symbols in orasql8.dll then? > Even if, Borland C++ is no longer supported: > > <http://my.kharkov.org/docs/oracle/nt.816/a73023/ch1.htm#1660> > > I see 2 options: > > 1) Make an orasql8.lib: > > implib -a ORASQL8 /Oracle/Ora81/bin/ORASQL8.DLL > > and add it to $opts{LIBS} in Makefile.PL. > > 2) Import via .def file, e.g.: > > $opts{IMPORTS} = { > _SQLEnvGet => 'orasql8.SQLEnvGet', > _SQLSvcCtxGet => 'orasql8.SQLSvcCtxGet' > } if $os eq 'MSWin32' && $Config{cc} eq 'bcc32'; # Borland CC Does that work for you? And for other compilers? Wouldn't orasql8.dll still need to be installed and listed on the linker command line? > The remaining question is: how to find out the correct > version number? Maybe something like that: > > if ( $os eq 'MSWin32' ) { > for ( glob "$OH/ORAINST/*.rgs") { > my $rgs = substr $_, length "$OH/ORAINST/"; > $rgs =~ /(\d)(\d)(\d)/; > $inspdver{RDBMS} = join '.', $1, $2, $3; > } > } > > (There is an empty! 'Oracle 817 Production.rgs' in my > $OH/ORAINST directory. I don't know how portable that is.) There might be a version number in the registry. But since *very* few people would need the ability to share database connections with ProC/SQLLIB code my preference right now is to just disable it entirely on Windows and only enable it on other platforms for Oracle >= 9.0. Tim.