The libsqlora8 low budget homepage

libsqlora 8 - A simple C-Interface to access Oracle databases.

libsqlora8 is simple C-library to access Oracle databases via the OCI interface. Makes simple programming tasks much easier as with plain OCI.
If you are a C++ programmer and want to design strict OO programms, you better look at the OTL library developed by Sergei Kuchin.

The library was developed on SuSE GNU/Linux. The library should compile on every Unix system. Also some Windows users reported successfull installations.
Please mail to libsqlora8 email address if you have problems, defect reports, suggestions or success reports on a new platform.

Donations are welcome, please donate via to this email address:email2

Version:

Current stable release is 2.3.3 (Updated: 19.12.2005).

Features:

Download:

Version tgz (s)rpm zip
2.3.3libsqlora8-2.3.3.tar.gz - -

Installation:

Make sure your oracle environment is set up properly (e.g. ORACLE_HOME)
$> gunzip -c libsqlora8-2.3.0.tar.gz | tar xf -
$> cd libsqlora8-2.3.0
$> LD_LIBRARY_PATH=$ORACLE_HOME/lib
$> export LD_LIBRARY_PATH
$>./configure
$> make
$> make install
The library is build as a shared and static. When using this library add -lsqlora8 -L$ORACLE_HOME/lib -lclntsh to your LDFLAGS. Don't try to link static. It's horrible to find out the link sequence of the Oracle static libraries :(

Note: You have to set/append your LD_LIBRARY_PATH variable to/with $ORACLE_HOME/lib:${prefix}/lib

Building your program:

Here is an example Makefile (for GNU/Linux), to show you how to compile/link your program with libsqlora8:
# Makefile to build foo
#
# Change this to the prefix you used during configure of the library.
LIBSQLORA8_PREFIX=/usr

CC=gcc
CPPFLAGS=-I$(LIBSQLORA8_PREFIX)/include -I$(LIBSQLORA8_PREFIX)/lib/libsqlora8/include

# Remove -D_REENTRANT if you didn't configure libsqlora8 with threads
CFLAGS=-g -D_REENTRANT

# Remove -lpthread if you do didn't configure libsqlora8 with threads
LDFLAGS=-Wl,-R$(LIBSQLORA8_PREFIX)/lib -L$(LIBSQLORA8_PREFIX)/lib -lsqlora8 \
       -Wl,-R$(ORACLE_HOME)/lib -L$(ORACLE_HOME)/lib -lclntsh\
       -lpthread

all: foo

foo.o : foo.c

foo : foo.o


clean:
	$(RM) foo.o foo

Autoconf:

If you are using automake/autoconf in your development, you can use the supplied macros to easily integrate it in your project. This macro sets up also the paths to the oracle libraries.

The files aclibsqlora8.m4 and acoracle.m4, which are both included in the package and copied to ${prefix}/share/aclocal

Syntax:

AM_PATH_LIBSQLORA8([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND ]])

Example:
Add these lines to your configure.in:

dnl
dnl Check if the required libsqlora8 is installed
dnl
AM_PATH_LIBSQLORA8(2.3.0, , [
    LIBS="$LIBS $LIBSQLORA8_LIBS"
    CFLAGS="$CPPFLAGS $LIBSQLORA8_CFLAGS"
], [ echo "*** Please install libsqlora 2.3.0 or higher"; exit 1 ])

pkg-config:

If you are using pkg-config, you can check it via this macro in your configure.in

dnl
dnl Check if the required libsqlora8 is installed
dnl
PKG_CHECK_MODULES(LIBSQLORA8, [ libsqlora8 >= 2.3.0 ], [
    LIBS="$LIBS $LIBSQLORA8_LIBS"
    CFLAGS="$CFLAGS $LIBSQLORA8_CFLAGS"
],[ echo "*** Please install libsqlora8 2.3.0 or higher"; exit 1 ])

Environment Variables:

License:

This software is absolutely free. I grant everybody the right to modify the source, as long as it is mentioned in the distribution.

I will not maintain modified versions. If you have enhancements or bugfixes, please send it to me. I will include it, as long as it doesn't break backward compatibility.

Price:

Download and usage is free, even for commercial use. I help you also as far as I can with your installation on other platforms for free. Bugfixes are, of course, also free.

However, I didn't receive any donations for my work until now (Dec. 2005). This means zero (0) income from it! Because I have to somehow pay the webspace and the computers where I develop and feed my family, I cannot spend too much time on it.

I'm not willing anymore, to give free consulting on the library usage (->RTFM), OCI programming, SQL and general Oracle related questions (there are far better people on that, see my Links).

Don't understand this wrong. I don't want to make big bucks with this software, but I cannot spent time on helping you solving your problems when I can make real money doing something else.

Successfully installed on these platforms:

Note: If your platform does not appear here, doesn't mean its not supported! It should compile one every *nix flavour. If not, give me a detailed report and we fix it together.

Windows

Handa Hirotake from Japan was so kind to provide the instructions for compiling the library (version 2.2.7) on Windows. Please visit this English and Japanese (EUC-JP encoding) README or English and Japanese (Shift-JIS encoding) README file. He supplied also the necessary libsqlora8.def file.

Links:

NOTE: This links are for your convenience. I'm not responsable for the content of the linked sites.

Oracle:
Oracle Template Library (OTL) developed by Segei Kuchin.
Ixora Unix + Oracle = Ixora
OraFAQ.org. A must for a Oracle expert.
The Oracle Technology Network (OTN)
OraPub Craig Shallahamer's tunig site.
SuSE Oracle installation guides
AskTom. Thomas Kytes website is a never ending resource for all Oracle related questions. Read his book expert-one-on-one Oracle!
hotsos
Steven Feuerstein. He is my PL/SQL Guru. You should definitly read his books if you program PL/SQL

Software Development:
Joel on Software
doxygen (sw documentation tool)
pkg-config

My current Employer:
Axense GmbH


Last updated: 19.12.2005

Valid HTML 4.01!