I am getting errors during my make processing. I am trying to interface oci with php 4.3.11. Below see my set-up/configuration script and make errors. I have been searching the internet for a couple of days now and cannot find anything of use. Any help would be greatly apreciated.

Thanks in advance for any input.

Mike

tcsh

setenv PATH /usr/local/bin:$PATH

setenv PATH /opt/SUNWspro/bin:$PATH

setenv PATH /usr/perl5/5.00503/bin:$PATH

set LD_LIBRARY_PATH LD_LIBRARY_PATH=/usr/lib:/usr/openwin/lib:/usr/dt/lib:/usr/local/lib:/opt/oracle/instantclient_10_2

set

LD_LIBRARY_PATH /usr/lib:/usr/openwin/lib:/usr/dt/lib:/usr/local/lib:/opt/oracle/instantclient_10_2
_

addsuffix
argv ()
autologout 60
cwd /
dirstack /
echo_style bsd
edit
gid 1
group other
history 100
home /
killring 30
owd
path (/usr/perl5/5.00503/bin /opt/SUNWspro/bin /usr/local/bin /usr/bin /usr/local/bin /usr/ccs/bin /usr/sbin /sbin /usr/dt/bin /usr/openwin/bin)
prompt %#
prompt2 %R?
prompt3 CORRECT>%R (y|n|e|a)?
shell /usr/bin/tcsh
shlvl 1
status 0
tcsh 6.11.00
term vt100
tty pts/15
uid 0
user root
version tcsh 6.11.00 (Astron) 2001-09-02 (sparc-sun-solaris) options 8b,nls,dl,al,kan,rh,color,dspm
#

cd /opt/src/php-4.3.11

view build.sh

"build.sh" [Read only] 3 lines, 333 characters
#!/bin/sh
./configure --with-apxs=/opt/apache/bin/apxs --with-openssl=/opt/openssl --with-ldap --with-mysql --with-oracle=/oracle/app/oracle/product/ias
1022e --with-oci8-instant-client=/opt/oracle/instantclient_10_2 --enable-shared

configure runs without errors

During make get following:

ild: (undefined symbol) OCINlsCharSetNameToId -- referenced in the text segment of ext/oci8/oci8.lo
ild: (undefined symbol) OCINlsEnvironmentVariableGet -- referenced in the text segment of ext/oci8/oci8.lo
ild: (undefined symbol) OCIEnvNlsCreate -- referenced in the text segment of ext/oci8/oci8.lo
make: *** [sapi/cli/php] Error 5
#

    Hi,

    you added /opt/oracle/instantclient_10_2 to the LD_LIBRARY_PATH environment variable but you should add the path to the lib directory to LD_LIBRARY_PATH. Which compiler do you use (sun,gcc) ? Remove the --with-oracle line, you only need that switch if you want to additionally use the oracle_???? PHP functions.

    Does the configure script print anything about the oracle version it found ?

    Thomas

      Thomas,

      Thank you for the reply.

      Currently we use oracle and are migrating/switching to oci so we need oracle for the present. We are running oracle 9.0. gcc says cached during configuration.

      Thanks again for your reply

      Mike

        Ok,

        first of all I'd suggest to set the basic oracle environment variables (ORACLE_HOME, NLS_LANG ....).

        I'd suggest to execute "make distclean" whenever you want to recompile PHP or at least to remove config.cache in order to make configure not to use the config cache.

        The configure script should print info about the oracle version it found. If the environment variables are set up correctly and Oracle is installed with all the need libraries then configure should be able to find oracle even without specifying the path to oracle.

        So e.g. ./configure --with-oracle=shared --with-oci8=shared should compile php with oracle and oci8 extensions compiled as shared modules.

        Thomas

          Write a Reply...