php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #27991 oci8 compile with oracle client v9.2.0 on Linux fails with undeclared symbol
Submitted: 2004-04-14 09:21 UTC Modified: 2004-04-14 10:18 UTC
From: alex at 2e-systems dot com Assigned:
Status: Not a bug Package: Compile Failure
PHP Version: 4.3.5 OS: linux
Private report: No CVE-ID: None
 [2004-04-14 09:21 UTC] alex at 2e-systems dot com
Description:
------------
oracle client is v9.2.0

I've worked around it by #defining OCI_NLS_CHARSET_ID 0, and so far so good, it works.

/web/soft/src/php-4.3.5/ext/oci8/oci8.c: In function `_oci_open_session':
/web/soft/src/php-4.3.5/ext/oci8/oci8.c:2183: `OCI_NLS_CHARSET_ID' undeclared (first use in this function)
/web/soft/src/php-4.3.5/ext/oci8/oci8.c:2183: (Each undeclared identifier is reported only once
/web/soft/src/php-4.3.5/ext/oci8/oci8.c:2183: for each function it appears in.)




Patches

Pull Requests

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2004-04-14 09:28 UTC] tony2001@php.net
Please, locate your oci.h and try to find OCI_NLS_CHARSET_ID in it.
It should be defined there.
I've got the same Oracle/Oracle client version and oci.h contains this line:
oci.h:2084:#define OCI_NLS_CHARSET_ID    93
 [2004-04-14 09:38 UTC] alex at 2e-systems dot com
I did that already and it is not there. Just checked on another system (solaris) and it is there in oci8.h. Hmmm... could be a screwup on my side with the includes.
 [2004-04-14 09:45 UTC] alex at 2e-systems dot com
its oci.h of course, not oci8.h
 [2004-04-14 09:55 UTC] tony2001@php.net
Please, check your OCI headers (they are probably in $ORACLE_HOME/rdbms/demo) and tell me: does your libclntsh.so export OCINlsCharSetNameToId function? (nm libclntsh.so | grep OCINlsCharSetNameToId)
 [2004-04-14 10:09 UTC] alex at 2e-systems dot com
> nm libclntsh.so | grep OCINlsCharSetNameToId
0019ca30 T OCINlsCharSetNameToId

its there. So I guess I have wrong includes.
 [2004-04-14 10:18 UTC] tony2001@php.net
Yes, it seems to me so.
At least, this constant is defined in oci.h of the same Oracle client.
I'm marking this bug as bogus, feel free to reopen it when you have an additional info.
 
PHP Copyright © 2001-2026 The PHP Group
All rights reserved.
Last updated: Sun Feb 01 05:00:01 2026 UTC