php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #35242 Problem with comiling OCI 1.1.1 on PHP 5.1.0RC4
Submitted: 2005-11-16 16:05 UTC Modified: 2005-11-17 11:14 UTC
Votes:1
Avg. Score:4.0 ± 0.0
Reproduced:1 of 1 (100.0%)
Same Version:1 (100.0%)
Same OS:1 (100.0%)
From: pawel at gmx dot net Assigned:
Status: Not a bug Package: OCI8 related
PHP Version: 5.1.0RC4 OS: Linux Slackware 2.4.28
Private report: No CVE-ID: None
 [2005-11-16 16:05 UTC] pawel at gmx dot net
Description:
------------
This maybe a duplicate of http://bugs.php.net/bug.php?id=34995 but I cannot reopen it. The solution for the problem described allows me to compile OCI8 1.1.1 under PHP 5.0.5 but I receive the same errors as the original author under PHP 5.1.0RC4.

I did completely remove ext/oci8 directory before replacing it whith PECL code. I also used ./buildconf --force option.


Patches

Pull Requests

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2005-11-16 16:22 UTC] tony2001@php.net
Describe in details what exactly are you doing and how do you compile it.
 [2005-11-16 17:33 UTC] pawel at gmx dot net
Reproduce code:
--------------
1. Download http://downloads.php.net/ilia/php-5.1.0RC4.tar.bz2
2. Unpack and remove ext/oci8 directory
3. Download http://pecl.php.net/get/oci8-1.1.1.tgz
4. Place contents of oci8-1.1.1 direcotry in ext/oci8
5. Execute:

make clean
./buildconf --force
./configure --with-oci8=/usr/local/oracle
make &&
make install


Result:
--------

ext/oci8/oci8.o(.text+0xb44): In function `php_oci_descriptor_flush_hash_dtor':
/root/work/web/php-5.1.0/ext/oci8/oci8.c:749: undefined reference to `php_oci_lob_flush'
ext/oci8/oci8.o(.text+0x24d5): In function `php_oci_column_to_zval':
/root/work/web/php-5.1.0/ext/oci8/oci8.c:1479: undefined reference to `php_oci_lob_read'
ext/oci8/oci8.o(.text+0x25f1): In function `php_oci_fetch_row':
/root/work/web/php-5.1.0/ext/oci8/oci8.c:1560: undefined reference to `php_oci_statement_fetch'
ext/oci8/oci8.o(.text+0x2750):/root/work/web/php-5.1.0/ext/oci8/oci8.c:1568: undefined reference to `php_oci_statement_get_column'
ext/oci8/oci8.o(.text+0x9dd): In function `php_oci_statement_list_dtor':
/root/work/web/php-5.1.0/ext/oci8/oci8.c:668: undefined reference to `php_oci_statement_free'
ext/oci8/oci8.o(.text+0x9fd): In function `php_oci_descriptor_list_dtor':
/root/work/web/php-5.1.0/ext/oci8/oci8.c:676: undefined reference to `php_oci_lob_free'
ext/oci8/oci8.o(.text+0xa1d): In function `php_oci_collection_list_dtor':
/root/work/web/php-5.1.0/ext/oci8/oci8.c:684: undefined reference to `php_oci_collection_close'
ext/oci8/oci8.o(.data+0x4): undefined reference to `zif_oci_define_by_name'
ext/oci8/oci8.o(.data+0x18): undefined reference to `zif_oci_bind_by_name'
ext/oci8/oci8.o(.data+0x2c): undefined reference to `zif_oci_field_is_null'
ext/oci8/oci8.o(.data+0x40): undefined reference to `zif_oci_field_name'
[...]
collect2: ld returned 1 exit status
make: *** [sapi/cli/php] Error 1
 [2005-11-16 17:45 UTC] tony2001@php.net
Please run `ls -l ext/oci8` and `grep -rnH "oci8" Makefile | grep LIBTOOL` and paste the output here.

 [2005-11-16 22:35 UTC] pawel at gmx dot net
1. ls -l ext/oci8 BEFORE make/make install:
total 252
-rw-r--r--  1 rura users   134 Sep  9 15:20 CREDITS
-rw-r--r--  1 rura users  2319 Sep  6 21:31 README
-rw-r--r--  1 rura users 11356 Sep  9 15:20 config.m4
-rw-r--r--  1 rura users   685 Sep  9 15:20 config.w32
-rw-r--r--  1 rura users 57033 Sep 22 14:09 oci8.c
-rw-r--r--  1 rura users  5143 Sep 15 19:25 oci8.dsp
-rw-r--r--  1 rura users 22097 Sep  6 23:42 oci8_collection.c
-rw-r--r--  1 rura users 57313 Sep  7 10:58 oci8_interface.c
-rw-r--r--  1 rura users 21308 Sep  6 23:42 oci8_lob.c
-rw-r--r--  1 rura users 32161 Sep 15 10:28 oci8_statement.c
-rw-r--r--  1 rura users  2520 Sep  9 15:20 php_oci8.h
-rw-r--r--  1 rura users 16903 Sep  6 23:44 php_oci8_int.h
drwxr-xr-x  2 root root   3928 Nov 16 23:06 tests

2. ls -l ext/oci8 AFTER make/make install:
total 396
-rw-r--r--  1 rura users    134 Sep  9 15:20 CREDITS
-rw-r--r--  1 rura users   2319 Sep  6 21:31 README
-rw-r--r--  1 rura users  11356 Sep  9 15:20 config.m4
-rw-r--r--  1 rura users    685 Sep  9 15:20 config.w32
-rw-r--r--  1 rura users  57033 Sep 22 14:09 oci8.c
-rw-r--r--  1 rura users   5143 Sep 15 19:25 oci8.dsp
-rw-r--r--  1 root root     302 Nov 16 23:30 oci8.lo
-rw-r--r--  1 root root  139760 Nov 16 23:30 oci8.o
-rw-r--r--  1 rura users  22097 Sep  6 23:42 oci8_collection.c
-rw-r--r--  1 rura users  57313 Sep  7 10:58 oci8_interface.c
-rw-r--r--  1 rura users  21308 Sep  6 23:42 oci8_lob.c
-rw-r--r--  1 rura users  32161 Sep 15 10:28 oci8_statement.c
-rw-r--r--  1 rura users   2520 Sep  9 15:20 php_oci8.h
-rw-r--r--  1 rura users  16903 Sep  6 23:44 php_oci8_int.h
drwxr-xr-x  2 root root    3928 Nov 16 23:06 tests

3. grep -rnH "oci8" Makefile | grep LIBTOOL
Makefile:430:   $(LIBTOOL) --mode=compile $(CC)  -Iext/oci8/ -I/root/work/web/php-5.1.0/ext/oci8/ $(COMMON_FLAGS) $(CFLAGS_CLEAN) $(EXTRA_CFLAGS) -c /root/work/web/php-5.1.0/ext/oci8/oci8.c -o ext/oci8/oci8.lo
 [2005-11-16 22:39 UTC] tony2001@php.net
You didn't run ./buildconf or it failed.
No bug here.
 [2005-11-16 22:40 UTC] sniper@php.net
What autoconf version are you using?
 [2005-11-17 10:38 UTC] pawel at gmx dot net
I used autoconf version 2.59 but now downgraded to 2.13. Buildconf gives me this oputput:

./buildconf --force
Forcing buildconf
using default Zend directory
buildconf: checking installation...
buildconf: autoconf version 2.13 (ok)

When I use downgraded autoconf I still cannot compile new oci8 extension with PHP 5.1.0RC4 or snaphsot php5-200511161130. It works fine with PHP 5.0.5 w/ oci8 1.1  and 5.1.0RC4 with oci8 v 1.0.
 [2005-11-17 10:45 UTC] tony2001@php.net
Remove ./configure before running ./buildconf --force.
 [2005-11-17 11:14 UTC] pawel at gmx dot net
It works! 
I tried removing configure and compiling with autoconf 2.59 but downgraded autoconf did the job.

Thanks for help!
 
PHP Copyright © 2001-2025 The PHP Group
All rights reserved.
Last updated: Wed Jul 02 03:01:35 2025 UTC