
On Fri, 20 Jun 2008, Alistair Bayley wrote:
Another problem is that the Oracle installation process assumes that, for all platforms, the library is called oci i.e. the linker option -loci is used. For Unix clients, the OCI library seems to be libclnstsh.so, so I guess it should pass -lclnstsh. This highlights the lack of testing on non-Windows platforms. If you'd like to help get this working better, perhaps we can discuss off-list.
(I remain on the list in order to fill the archive with information, others may need, too.) I have now installed the OCI SDK http://download.oracle.com/otn/linux/instantclient/10204/oracle-instantclien... and Cabal-1.4 in order to get Takusen from Darcs repository running. I configure the package with -f oracle and the package gets compiled (and emits several warnings from Haddock-2.0). (Btw. Takusen should be split into several packages for all database backends because Cabal flags must not influence the package interface.) But on installation Cabal complains about missing /usr/oci directory. I assume that this must be the include dir of OCI include files. For me this is /usr/include/oracle/10.2.0.4/client/ I can add this path with runhaskell Setup.hs configure --extra-include-dirs=/usr/include/oracle/10.2.0.4/client but I cannot replace /usr/oci. If I remove /usr/oci manually from dist/installed-pkg-config then the path /usr/oci is again added by runhaskell Setup.hs install . I'm lost. Am I on the right track? Once I will get Takusen running with OCI - how would I use it? Is there a minimal example which connects to an Oracle database, performing a very simple query?