|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
[2007-08-28 09:45 UTC] astorozhuk at ukrcard dot com dot ua
Description: ------------ 1.look: /usr/local/src/php-5.2.3/ext/oci8/oci8_lob.c:304: error: `OCI_NLS_CHARSET_MAXBYTESZ' undeclared (first use in this function) /usr/local/src/php-5.2.3/ext/oci8/oci8_lob.c:304: error: (Each undeclared identifier is reported only once /usr/local/src/php-5.2.3/ext/oci8/oci8_lob.c:304: error: for each function it appears in.) make: *** [ext/oci8/oci8_lob.lo] Error 1 http://bugs.php.net/bug.php?id=41563&edit=1 [4 Jun 8:36am UTC] tony2001@php.net Sorry, we don't support Oracle 8 anymore. http://bugs.php.net/bug.php?id=41348 [10 May 8:05pm UTC] tony2001@php.net Upgrade to newer Oracle version. 2. description this things happen if compile with OCI8 support you must understand, that it is not ORACLE 8(!) support, it is ORALCE suppurt we have oracle9 or 10 , and OCI8 is standart library (there is no OCI9 OCI10 library, or OCI library) so you replys is stupid 3.solution (solution was took and analysed from http://lists.freebsd.org/pipermail/freebsd-ports-bugs/2007-May/120308.html) solution itself: tar xvfz php-5.2.3.tar.gz cd ext/oci8 EDIT oci8_lob.c, near line 340 add compiler commands to make text: =================================== if (is_clob) { #ifdef OCI_NLS_CHARSET_MAXBYTESZ PHP_OCI_CALL_RETURN(connection->errcode, OCINlsNumericInfoGet, (connection->env, connection->err, &bytes_per_char, OCI_NLS_CHARSET_MAXBYTESZ)); if (connection->errcode != OCI_SUCCESS) { php_oci_error(connection->err, connection->errcode TSRMLS_CC); PHP_OCI_HANDLE_ERROR(connection, connection->errcode); return 1; } #else bytes_per_char = 4; #endif } else { /* BLOBs don't have encoding, so bytes_per_char == 1 */ } =================================== added lines: #ifdef OCI_NLS_CHARSET_MAXBYTESZ #else bytes_per_char = 4; #endif =================================== 4. TODO for you please change your comments to this solution, because i had to use old php version because i dodnt know solution to make it work in new versions and after sawing your replys i was shocked places to change comments http://bugs.php.net/bug.php?id=41563&edit=1 http://bugs.php.net/bug.php?id=41348 PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits
|
|||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Fri Oct 24 13:00:02 2025 UTC |
i definitly wrote in OS field - sles9 (sles9= Suse Linux Enterprise server version 9) , service pack 3, OFFICIAL i mention freebsd as link, not because i use it. i found link with problem solution. configure ./configure --with-apxs=/usr/local/apache/bin/apxs --prefix=/usr/local --with-config-file-path=/usr/local/apache/conf --with-oci8=/oracle/as --disable-rpath --enable-soap --enable-iconv --enable-oracle --with-gd -with-png-dir=/usr --with-jpeg-dir=/usr --with-freetype-dir=/usr --with-zlib=/usr (/oracle/as is oracle application server. we use also oracle9 database. all from official installation) version 5.1.6 compilations is normal version 5.2.3 not compiling , error i've mentioned above !useful information: ------------------------------------------ please add 4 lines to source of oci8 extension lines: #ifdef OCI_NLS_CHARSET_MAXBYTESZ #else bytes_per_char = 4; #endif in ext/oci8/oci8_lob.c, near line 340 as i mensioned above ------------------------------------------- another questions: why some php developers not analysing problem , but just make copy-paste, and even make errors in copy-pasting :)