[OCILIB] Problem of use in Gentoo of ocilib
Hello all,
first of all im sorry for posting in a major french forum, but google only takes me here as the similar results for my problem.
I have a linux machine running gentoo, i have installed the oracle instant client for linux and the oracle sdk for linux too with no problems, i have defined my LD_LIBRARY_PATH and ORACLE_HOME and installed ocilib from source with no problems at all.
The problem begins when i try to compile this program:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
|
#include "ocilib.h"
int main()
{
OCI_Connection *cn;
OCI_Statement *st;
int res = 0;
if (!OCI_Initialize(NULL, NULL, OCI_ENV_DEFAULT))
return EXIT_FAILURE;
cn = OCI_ConnectionCreate("db", "usr", "pwd", OCI_SESSION_DEFAULT);
st = OCI_CreateStatement(cn);
/* pl/sql call */
OCI_Prepare(st, MT("begin :res := trunc(sysdate+1)-trunc(sysdate-1); end;"));
OCI_BindInt(st, MT(":res"), &res);
OCI_Execute(st);
printf("result : %i\n", res);
OCI_Cleanup();
return EXIT_SUCCESS;
} |
i have this makefile
Code:
1 2 3 4 5 6
|
ALL : ocilib main.o
ocilib: main.o
gcc -o main.o -L/usr/lib/oracle/10.2.0.3/client/include/lib -lclntsh -L/usr/local/lib -DOCI_IMPORT_LINKAGE -DOCI_CHARSET_UNICODE
main.o: main.c
gcc -Wall -o main main.c -I/usr/local/include -L/usr/lib/oracle/10.2.0.3/client/include/lib |
and when i run the make i get this:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
|
helder_oliveira Desktop # make
gcc -Wall -o main main.c -I/usr/local/include -L/usr/lib/oracle/10.2.0.3/client/include/lib
/tmp/ccoEapRA.o: In function `main':
main.c:(.text+0x22): undefined reference to `OCI_Initialize'
main.c:(.text+0x4b): undefined reference to `OCI_ConnectionCreate'
main.c:(.text+0x5c): undefined reference to `OCI_StatementCreate'
main.c:(.text+0x72): undefined reference to `OCI_Prepare'
main.c:(.text+0x89): undefined reference to `OCI_BindInt'
main.c:(.text+0x97): undefined reference to `OCI_Execute'
main.c:(.text+0xb3): undefined reference to `OCI_Cleanup'
collect2: ld returned 1 exit status
make: *** [main.o] Error 1 |
by the way here are my env variables also
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63
|
MANPATH=/etc/java-config-2/current-system-vm/man:/usr/local/share/man:/usr/share/man:/usr/share/binutils-data/i486-pc-linux-gnu/2.18/man:/usr/share/gcc-data/i486-pc-linux-gnu/4.1.2/man:/opt/blackdown-jdk-1.4.2.03/man:/etc/java-config/system-vm/man/:/usr/lib/php5/man/:/usr/kde/3.5/share/man:/usr/qt/3/doc/man
INTEL_BATCH=1
SSH_AGENT_PID=5018
GPG_AGENT_INFO=/tmp/seahorse-bgNNMA/S.gpg-agent:5028:1
SHELL=/bin/bash
DESKTOP_STARTUP_ID=
TERM=xterm
GTK_RC_FILES=/etc/gtk/gtkrc:/home/helder.oliveira/.gtkrc-1.2-gnome2
WINDOWID=23069044
OLDPWD=/home/helder.oliveira
QTDIR=/usr/qt/3
GTK_MODULES=gnomebreakpad
USER=root
LD_LIBRARY_PATH=/usr/lib/oracle/10.2.0.3/client/lib
LS_COLORS=no=00:fi=00:di=01;34:ln=01;36:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=01;05;37;41:mi=01;05;37;41:su=37;41:sg=30;43:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.svgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.lzma=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.bz2=01;31:*.bz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.rar=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.pdf=00;32:*.ps=00;32:*.txt=00;32:*.patch=00;32:*.diff=00;32:*.log=00;32:*.tex=00;32:*.doc=00;32:*.aac=00;36:*.au=00;36:*.flac=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:
GDK_USE_XFT=1
SSH_AUTH_SOCK=/tmp/keyring-Gwm8RL/ssh
GNOME_KEYRING_SOCKET=/tmp/keyring-Gwm8RL/socket
USERNAME=helder.oliveira
SESSION_MANAGER=local/helder_oliveira:/tmp/.ICE-unix/4996
VMHANDLE=blackdown-jdk-1.4.2
CONFIG_PROTECT_MASK=/etc/env.d/java/ /etc/php/cli-php5/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/apache2-php5/ext-active/ /etc/udev/rules.d /etc/fonts/fonts.conf /etc/gconf /etc/terminfo /etc/ca-certificates.conf /etc/revdep-rebuild
PAGER=/usr/bin/less
PATH=/sbin:/bin:/usr/sbin:/usr/bin
DESKTOP_SESSION=gnome
TNS_ADMIN=/etc/oracle/
C_INCLUDE_PATH=/usr/lib/oracle/10.2.0.3/client/include
GDM_XSERVER_LOCATION=local
PWD=/home/helder.oliveira/Desktop
GENERATION=2
JAVA_HOME=/etc/java-config-2/current-system-vm
JAVAC=/etc/java-config-2/current-system-vm/bin/javac
EDITOR=/usr/bin/vim
LANG=C
GDM_LANG=C
QMAKESPEC=linux-g++
KDEDIRS=/usr:/usr/local:/usr/kde/3.5
GDMSESSION=gnome
HOME=/root
JDK_HOME=/etc/java-config-2/current-system-vm
SHLVL=2
GNOME_DESKTOP_SESSION_ID=Default
LESS=-R -M --shift 5
LOGNAME=root
PYTHONPATH=/usr/lib/portage/pym
GCC_SPECS=
CVS_RSH=ssh
XDG_DATA_DIRS=/usr/share:/usr/kde/3.5/share:/usr/local/share
DBUS_SESSION_BUS_ADDRESS=unix:abstract=/tmp/dbus-u0RTvepDUz,guid=07d82012fa220e6ef5fa21e54942e678
CLASSPATH=.
LESSOPEN=|lesspipe.sh %s
PKG_CONFIG_PATH=/usr/qt/3/lib/pkgconfig
WINDOWPATH=7
INFOPATH=/usr/share/info:/usr/share/binutils-data/i486-pc-linux-gnu/2.18/info:/usr/share/gcc-data/i486-pc-linux-gnu/4.1.2/info:/usr/share/info/emacs-22
DISPLAY=:0.0
RUBYOPT=-rauto_gem
OPENGL_PROFILE=xorg-x11
ORACLE_HOME=/usr/lib/oracle/10.2.0.3/client
CONFIG_PROTECT=/usr/kde/3.5/share/config /usr/kde/3.5/env /usr/kde/3.5/shutdown /usr/share/config
XAUTHORITY=/root/.xauthQTu5Hc
COLORTERM=gnome-terminal
_=/bin/env |
I know many are garbish, but i don't dare to delete a line so you can see all my definitions.
It's getting kinda frustrating so im asking for your help and maybe some patience if im making a noob mistake :aie: