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:
i have this makefile
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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; }
and when i run the make i get this:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
by the way here are my env variables also
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
I know many are garbish, but i don't dare to delete a line so you can see all my definitions.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
It's getting kinda frustrating so im asking for your help and maybe some patience if im making a noob mistake![]()
Partager