|  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #71078 Oci8 Package not compiling under PHP 7.0
Submitted: 2015-12-10 06:12 UTC Modified: 2015-12-11 02:10 UTC
Avg. Score:3.0 ± 0.0
Reproduced:1 of 1 (100.0%)
Same Version:1 (100.0%)
Same OS:1 (100.0%)
From: aqangeles at gmail dot com Assigned:
Status: Not a bug Package: OCI8 related
PHP Version: 7.0.0 OS: Ubuntu 14.04.3 LTS
Private report: No CVE-ID: None
 [2015-12-10 06:12 UTC] aqangeles at gmail dot com
Installing of oci8 extension via PECL and manually compiling the package fails.

Test script:
$ sudo pecl install oci8

Expected result:
oci8 extension installed

Actual result:
downloading oci8-2.0.8.tgz ...
Starting to download oci8-2.0.8.tgz (190,854 bytes)
.........................................done: 190,854 bytes
11 source files, building
running: phpize
Configuring for:
PHP Api Version:         20151012
Zend Module Api No:      20151012
Zend Extension Api No:   320151012
Please provide the path to the ORACLE_HOME directory. Use 'instantclient,/path/to/instant/client/lib' if you're compiling with Oracle Instant Client [autodetect] : building in /tmp/pear/temp/pear-build-root3P4AoF/oci8-2.0.8
running: /tmp/pear/temp/oci8/configure --with-php-config=/usr/bin/php-config --with-oci8
checking for grep that handles long lines and -e... /bin/grep
configure: creating ./config.status
config.status: creating config.h
config.status: executing libtool commands
running: make
/bin/bash /tmp/pear/temp/pear-build-root3P4AoF/oci8-2.0.8/libtool --mode=compile cc  -I. -I/tmp/pear/temp/oci8 -DPHP_ATOM_INC -I/tmp/pear/temp/pear-build-root3P4AoF/oci8-2.0.8/include -I/tmp/pear/temp/pear-build-root3P4AoF/oci8-2.0.8/main -I/tmp/pear/temp/oci8 -I/usr/include/php/20151012 -I/usr/include/php/20151012/main -I/usr/include/php/20151012/TSRM -I/usr/include/php/20151012/Zend -I/usr/include/php/20151012/ext -I/usr/include/php/20151012/ext/date/lib -I/u01/app/oracle/product/11.2.0/xe/rdbms/public -I/u01/app/oracle/product/11.2.0/xe/rdbms/demo  -DHAVE_CONFIG_H  -g -O2   -c /tmp/pear/temp/oci8/oci8.c -o oci8.lo
libtool: compile:  cc -I. -I/tmp/pear/temp/oci8 -DPHP_ATOM_INC -I/tmp/pear/temp/pear-build-root3P4AoF/oci8-2.0.8/include -I/tmp/pear/temp/pear-build-root3P4AoF/oci8-2.0.8/main -I/tmp/pear/temp/oci8 -I/usr/include/php/20151012 -I/usr/include/php/20151012/main -I/usr/include/php/20151012/TSRM -I/usr/include/php/20151012/Zend -I/usr/include/php/20151012/ext -I/usr/include/php/20151012/ext/date/lib -I/u01/app/oracle/product/11.2.0/xe/rdbms/public -I/u01/app/oracle/product/11.2.0/xe/rdbms/demo -DHAVE_CONFIG_H -g -O2 -c /tmp/pear/temp/oci8/oci8.c  -fPIC -DPIC -o .libs/oci8.o
/tmp/pear/temp/oci8/oci8.c:36:40: fatal error: ext/standard/php_smart_str.h: No such file or directory
 #include "ext/standard/php_smart_str.h"
compilation terminated.
make: *** [oci8.lo] Error 1
ERROR: `make' failed


Add a Patch

Pull Requests

Add a Pull Request


AllCommentsChangesGit/SVN commitsRelated reports
 [2015-12-10 06:37 UTC] aqangeles at gmail dot com
It seems like compiling oci8 extension from php-7 src works.
- git clone php7 --depth 1
- cd php7/ext/oci8
- phpize
- ./configure --with-oci8=instantclient,/usr/lib/oracle/11.2/client64/lib
- make
- make install
 [2015-12-10 07:40 UTC] rgat dot randy at gmail dot com
Got same results with arjay. Looks like the latest source is pending for release at PECL.;a=tree;f=ext/oci8;hb=refs/heads/master

To replicate:

cd /tmp
pecl download oci8
tar -zxvf oci8-2.0.8.tgz
cd oci8-2.0.8

will look for non existing php7 file php_smart_str.h got replaced with zend_smart_str.h.
 [2015-12-11 02:10 UTC]
-Status: Open +Status: Not a bug
 [2015-12-11 02:10 UTC]
This is expected.
A PECL release compatible with PHP 7 is pending.
In the meantime use the OCI8 source from the PHP 7 bundle.
PHP Copyright © 2001-2020 The PHP Group
All rights reserved.
Last updated: Thu Jun 04 18:01:24 2020 UTC