OCCI and GCC
OS is actually Cygwin on Win2000 (close enough to Linux). Successfully got OCI/Ora8i to work, had to convert the two OCI libs to "liboci.a" format via IMPDEF and DLLTOOL. Compiler is MinGW/GCC 2.95.3.
Trying the same thing with OCCI has not worked so far. Converted oraocci9.dll to libocci.a OK, ran dos2unix on the header files and included them, tried the occidesc.cpp, got a very large number of errors (67K worth).
Here is a sample, interesting because cout should already be
readily availble in the distribution:
//C/cygwin/home/potken/src/OCCI/desc/descr.cc:379: undefined reference to `cout'
Here are some more:
descr.cc: In method `void occidesc::describe_type()':
descr.cc:113: warning: comparison between signed and unsigned
descr.cc: In method `void occidesc::describe_table()':
descr.cc:207: warning: comparison between signed and unsigned
descr.cc: In method `void occidesc::describe_proc()':
descr.cc:277: warning: comparison between signed and unsigned
descr.cc: In method `class string occidesc::printType(int)':
descr.cc:368: warning: control reaches end of non-void function `occidesc::printType(int)'
Someone in this forum mentioned that GCC won't work on Solaris due to name mangling, but the earlier success I had (OCI/8i) and the strange results I got here (OCCI/9i) make me think there is something simple wrong here. The Oracle documentation makes reference in passing that additional libraries may be needed; I made my own make file similar to the type previously successful with 8i/OCI. Are the libraries the problem?
If anyone has any ideas / experience with this particular issue, it would be enormously helpful to me and valuable to many other people - Win32 programs are fairly easy to write with GCC, the Ora9i personal edition fits on a laptop, GCC is free and non-proprietary... you get the idea. OCI works but is more than a little cumbersome with long programs. The idea of creating a complete, free, high-performance, rapid database client development system on a laptop is very attractive - I just have the compile step to get working and the entire system will work.
Thanks in advance,
Phil Otken
potken<at symbol>hyper-ad<dot symbol>com
<anti-spam-replace-with-approp.-char>