php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #68244 php-pdo-oci not compiling
Submitted: 2014-10-16 14:43 UTC Modified: 2014-10-18 17:57 UTC
From: jfha73 at gmail dot com Assigned: sixd (profile)
Status: Not a bug Package: Compile Failure
PHP Version: master-Git-2014-10-16 (Git) OS: Windows
Private report: No CVE-ID: None
 [2014-10-16 14:43 UTC] jfha73 at gmail dot com
Description:
------------
Hey guys,

I tried using Instant Client 10, 11 and 12 and I keep getting this error:

        type ext\pcre\php_pcre.def > Release_TS\php7ts.dll.def
        "cl.exe" /I "d:\instantclient_10_2_x64\sdk\include"  /DHAVE_OCI_H=1 /D C
OMPILE_DL_PDO_OCI /D PDO_OCI_EXPORTS=1  /DHAVE_OCIENVCREATE=1 /DHAVE_OCISTMTFETC
H2=1 /DHAVE_OCIENVNLSCREATE=1 /nologo /FD /I . /I main /I Zend /I TSRM /I ext /D
 _WINDOWS /D ZEND_WIN32=1 /D PHP_WIN32=1 /D WIN32 /D _MBCS /W3   /wd4996 /D_USE_
32BIT_TIME_T=1   /MP  /LD /MD /W3 /Ox /D NDebug /D NDEBUG /D ZEND_WIN32_FORCE_IN
LINE /GF /D ZEND_DEBUG=0 /D ZTS=1 /I "D:\PHP-SDK\phpmaster\vc11\x86\deps\include
"  /D FD_SETSIZE=256 /FoRelease_TS\ext\pdo_oci\ /FdRelease_TS\ext\pdo_oci\ /FpRe
lease_TS\ext\pdo_oci\ /FRRelease_TS\ext\pdo_oci\ /c ext\pdo_oci\oci_driver.c ext
\pdo_oci\oci_statement.c ext\pdo_oci\pdo_oci.c
oci_driver.c
pdo_oci.c
oci_statement.c
ext\pdo_oci\oci_statement.c(193) : error C2088: '!' : illegal for struct
ext\pdo_oci\oci_statement.c(203) : error C2100: illegal indirection
ext\pdo_oci\oci_statement.c(210) : error C2100: illegal indirection
ext\pdo_oci\oci_statement.c(210) : error C2440: 'function' : cannot convert from
 'zval' to 'zval *'
ext\pdo_oci\oci_statement.c(210) : warning C4024: '_convert_to_string' : differe
nt types for formal and actual parameter 1
ext\pdo_oci\oci_statement.c(211) : error C2100: illegal indirection
ext\pdo_oci\oci_statement.c(212) : error C2100: illegal indirection
ext\pdo_oci\oci_driver.c(484) : warning C4002: too many actual parameters for ma
cro 'ZVAL_STRING'
ext\pdo_oci\oci_statement.c(225) : error C2088: '!' : illegal for struct
ext\pdo_oci\oci_driver.c(487) : warning C4002: too many actual parameters for ma
cro 'ZVAL_STRING'
ext\pdo_oci\oci_statement.c(240) : error C2100: illegal indirection
ext\pdo_oci\oci_driver.c(496) : warning C4002: too many actual parameters for ma
cro 'ZVAL_STRING'
ext\pdo_oci\oci_statement.c(244) : error C2100: illegal indirection
ext\pdo_oci\oci_driver.c(511) : warning C4002: too many actual parameters for ma
cro 'ZVAL_STRING'
ext\pdo_oci\oci_statement.c(244) : error C2440: 'function' : cannot convert from
 'zval' to 'zval *'
ext\pdo_oci\oci_statement.c(244) : warning C4024: '_convert_to_string' : differe
nt types for formal and actual parameter 1
ext\pdo_oci\oci_statement.c(245) : error C2440: 'function' : cannot convert from
 'zval' to 'zval *'
ext\pdo_oci\oci_driver.c(577) : warning C4028: formal parameter 3 different from
 declaration
ext\pdo_oci\oci_statement.c(245) : warning C4024: '_zval_dtor' : different types
 for formal and actual parameter 1
ext\pdo_oci\oci_driver.c(578) : warning C4028: formal parameter 3 different from
 declaration
ext\pdo_oci\oci_statement.c(247) : error C2100: illegal indirection
ext\pdo_oci\oci_driver.c(583) : warning C4028: formal parameter 2 different from
 declaration
ext\pdo_oci\oci_statement.c(248) : error C2100: illegal indirection
ext\pdo_oci\oci_driver.c(586) : warning C4028: formal parameter 2 different from
 declaration
ext\pdo_oci\oci_statement.c(248) : error C2106: '=' : left operand must be l-val
ue
ext\pdo_oci\oci_statement.c(251) : error C2100: illegal indirection
ext\pdo_oci\oci_statement.c(253) : error C2100: illegal indirection
ext\pdo_oci\oci_statement.c(316) : error C2039: 'namelen' : is not a member of '
pdo_bound_param_data'
        ext\pdo/php_pdo_driver.h(541) : see declaration of 'pdo_bound_param_data
'
ext\pdo_oci\oci_statement.c(316) : warning C4022: 'OCIBindByName' : pointer mism
atch for actual parameter 6
ext\pdo_oci\oci_statement.c(316) : warning C4047: 'function' : 'ub2' differs in
levels of indirection from 'sb2 *'
ext\pdo_oci\oci_statement.c(316) : warning C4024: 'OCIBindByName' : different ty
pes for formal and actual parameter 8
ext\pdo_oci\oci_statement.c(316) : warning C4047: 'function' : 'ub4 *' differs i
n levels of indirection from 'int'
ext\pdo_oci\oci_statement.c(316) : warning C4024: 'OCIBindByName' : different ty
pes for formal and actual parameter 13
ext\pdo_oci\oci_statement.c(316) : error C2198: 'OCIBindByName' : too few argume
nts for call
ext\pdo_oci\oci_statement.c(348) : error C2100: illegal indirection
ext\pdo_oci\oci_statement.c(354) : error C2100: illegal indirection
ext\pdo_oci\oci_statement.c(356) : error C2440: 'function' : cannot convert from
 'zval' to 'zval *'
ext\pdo_oci\oci_statement.c(356) : warning C4024: '_zval_dtor' : different types
 for formal and actual parameter 1
ext\pdo_oci\oci_statement.c(357) : error C2100: illegal indirection
ext\pdo_oci\oci_statement.c(358) : error C2100: illegal indirection
ext\pdo_oci\oci_statement.c(363) : error C2100: illegal indirection
ext\pdo_oci\oci_statement.c(364) : error C2100: illegal indirection
ext\pdo_oci\oci_statement.c(364) : error C2106: '=' : left operand must be l-val
ue
ext\pdo_oci\oci_statement.c(365) : error C2100: illegal indirection
ext\pdo_oci\oci_statement.c(370) : error C2100: illegal indirection
ext\pdo_oci\oci_statement.c(378) : error C2440: 'initializing' : cannot convert
from 'zval' to 'zval *'
ext\pdo_oci\oci_statement.c(410) : error C2100: illegal indirection
ext\pdo_oci\oci_statement.c(412) : error C2100: illegal indirection
ext\pdo_oci\oci_statement.c(413) : error C2100: illegal indirection
ext\pdo_oci\oci_statement.c(695) : warning C4028: formal parameter 2 different f
rom declaration
ext\pdo_oci\oci_statement.c(695) : warning C4028: formal parameter 4 different f
rom declaration
ext\pdo_oci\oci_statement.c(760) : warning C4028: formal parameter 3 different f
rom declaration
ext\pdo_oci\oci_statement.c(762) : warning C4028: formal parameter 4 different f
rom declaration
NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio 11.0
\VC\BIN\cl.exe"' : return code '0x2'
Stop.

Test script:
---------------
configure --disable-all --enable-cli --enable-pdo --with-pdo-oci=shared,C:\instantclient_10_2_x64\sdk

Same line, but different folder for Instant Client 11g and 12c

Expected result:
----------------
compile

Actual result:
--------------
It doesn't compile

Patches

Add a Patch

Pull Requests

Add a Pull Request

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2014-10-16 14:45 UTC] jfha73 at gmail dot com
I forgot to say I tried x64 and x86, I think I mixed them in the bug report.
 [2014-10-17 07:53 UTC] ab@php.net
Hi Jorge,

those aren't ported yet as well. Please see https://wiki.php.net/phpng#unsupported_extensions_not_converted_yet for the list. 

Cheers.
 [2014-10-17 15:53 UTC] jfha73 at gmail dot com
Weird, I was able to compile interbase also oci8 (using Instantclient 10), oci8_11g (Using Instantclient 11) and oci8_12c (Using Instantclient 12) with no error messages of any kind.
 [2014-10-18 17:57 UTC] sixd@php.net
-Status: Open +Status: Not a bug -Assigned To: +Assigned To: sixd
 [2014-10-18 17:57 UTC] sixd@php.net
PDO_OCI and OCI8 are not ported to master yet.
 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Fri Apr 26 05:01:30 2024 UTC