Re: [PHP4BETA] OCI8
| From: | Choe, Hyun-ho | Date: | Tue, 16 May 2000 21:01:09 +0000 |
| Subject: | Re: [PHP4BETA] OCI8 | ||
| References: | 1 2 3 4 5 6 | Groups: | php.version4 |
| Request: | Send a blank email to php-version4+get-15100@lists.php.net to get a copy of this message | ||
Thanks a lot!
Finally I've got working php4-oracle8i module now!
I simply deploy apache source RPM, and rebuild with only a line added like
following...
# diff -u apache.spec.original apache.spec
--- apache.spec.original Wed May 17 05:20:25 2000
+++ apache.spec Wed May 17 05:56:09 2000
@@ -83,6 +83,7 @@
%build
OPTIM="$RPM_OPT_FLAGS" \
+EXTRA_LDFLAGS=-lpthread \
./configure --prefix=/usr \
--with-layout=RedHat \
--add-module=$RPM_SOURCE_DIR/mod_bandwidth.c \
> On Wed, May 17, 2000 at 04:25:55AM +0900, Choe, Hyun-ho wrote:
> > I tested PHP4 RC2 with RedHat 6.1.
> > I used Oracle 8.1.6 EE and Apache 1.3.12 RPM (ie. packaged by RedHat).
> > I compiled PHP with --with-oracle=shared --with-oci8=shared options.
> > (I think there is no need to explain other options I set....)
> > I got libphp4.so, oracle.so, and oci8.so, but when I enabled oci8
extensions
> > in php.ini, apache terminated with no error_log.
> >
> > Here is my backtrace capture...
>
> this is because you need to relink your apache and add
> -lpthread to the LDFLAGS.
>
> there seems to be a problem if a program (httpd) that's not
> linked agains -lpthread dlopen()'s a shared library that is
> linked against -lpthread (libphp4.so links in libclntsh.so
> which is linked agains -lpthread)
>
> that will solve your problem -
>
> i would be interested to find out why this is the case!
>
> tc
> >
> > [root@theseus /root]# gdb /usr/sbin/httpd
> > GNU gdb 19991004
> > Copyright 1998 Free Software Foundation, Inc.
> > GDB is free software, covered by the GNU General Public License, and you
are
> > welcome to change it and/or distribute copies of it under certain
> > conditions.
> > Type "show copying" to see the conditions.
> > There is absolutely no warranty for GDB. Type "show warranty" for
details.
> > This GDB was configured as "i386-redhat-linux"...
> > (no debugging symbols found)...
> > (gdb) run -X -f /etc/httpd/conf/httpd.conf
> > Starting program: /usr/sbin/httpd -X -f /etc/httpd/conf/httpd.conf
> > Cannot access memory at address 0x40c41934
> > (gdb) bt
> > #0 0x4000a6c1 in _dl_debug_state () at dl-debug.c:56
> > #1 0x4017fc46 in _dl_close (map=0x816cdd8) at dl-close.c:195
> > #2 0x400a00c0 in dlclose_doit (handle=0x816cdd8) at dlclose.c:26
> > #3 0x4000a3db in _dl_catch_error (errstring=0x400a1d00,
> > operate=0x400a00a8 <dlclose_doit>, args=0x816cdd8) at dl-error.c:141
> > #4 0x400a0549 in _dlerror_run (operate=0x400a00a8 <dlclose_doit>,
> > args=0x816cdd8) at dlerror.c:125
> > #5 0x400a008e in dlclose (handle=0x816cdd8) at dlclose.c:32
> > #6 0x4027f2ab in module_destructor (module=0x8174530) at zend_API.c:817
> > #7 0x40281bd4 in zend_hash_destroy (ht=0x4039ee80) at zend_hash.c:528
> > #8 0x4027e979 in zend_shutdown () at zend.c:383
> > #9 0x4025c4ad in php_module_shutdown () at main.c:940
> > #10 0x4025c479 in php_module_shutdown_wrapper (sapi_globals=0x40386c20)
> > at main.c:914
> > #11 0x4028ae27 in apache_php_module_shutdown_wrapper () at
mod_php4.c:671
> > #12 0x8051068 in ap_run_cleanup ()
> > #13 0x804fe59 in ap_clear_pool ()
> > #14 0x805bf76 in ap_child_terminate ()
> > #15 0x805c65f in main ()
> > #16 0x400ba1fb in __libc_start_main (main=0x805c3e0 <main>, argc=4,
> > argv=0xbffffbc4, init=0x804f014 <_init>, fini=0x807b99c <_fini>,
> > rtld_fini=0x4000a600 <_dl_fini>, stack_end=0xbffffbbc)
> > at ../sysdeps/generic/libc-start.c:90
> > (gdb)
> >
> >
> > > On Wed, May 17, 2000 at 02:52:23AM +0900, Choe, Hyun-ho wrote:
> > > > I tested Oracle 8.1.6 EE on RedHat 6.1...
> > > > PHP4 RC2 DSO Module is still not working with Apache 1.3.12.
> > > >
> > > > BTW, when I compiled oracle & oci8 as stand-alone shared module,
> > > > oracle.so works fine. oci8.so doesn't work.
> > >
> > > what is "doesn't" work?
> > > >
> > > > I didn't test --with-oracle options alone, but I think it will work.
> > > >
> > > > > You building on Redhat? If so, fall back to the 8.0.5 Oracle
client
> > > > > libraries. There is 'some' problem between apache and the oracle
> > 8.1.5
> > > > > libs ... the same thing will happen if you build, say, an oracle
> > > > > authentication module into apache with 8.1.5.
> > > > >
> > > > > I wrestled with a similar problem for days. No core files, no
error
> > > > > log entries, no indication of any failure ... except that all
apache
> > > > > processes would die. Running through gdb would yield some memory
> > > > > violation while loading the DSO modules.
> > > > >
> > > > > I've got client 8.0.5 libs in PHP connecting to an 8.1.5 server
now.
> > > > Works
> > > > > fine. I've not tested the 8.1.6 release yet.
> > > > >
> > > > > kevin
> > > > > --
> > > > > Kevin Hendrix
> > > > > Programmer - PennyPI, LLC.
> > > > > khendrix@pennypi.com
> > > > > http://www.pennypi.com/
> > > > > -
> > > > > There are three kinds of lies: lies, damned lies, and statistics.
> > > > > - Mark Twain
> > > > >
> > > > > Matt Phillips wrote:
> > > > > >
> > > > > > We are having a problem getting Apache to run with PHP4 (CVS
from a
> > few
> > > > > > days ago). If we compile PHP without OCI8 support we have no
> > problems,
> > > > > > but if we include it we can't get Apache to start. I get no
errors
> > from
> > > > > > configure, make, or make install, or even when I start Apache.
But,
> > > > > > Apache never actually starts. If I run strace on it, it looks
like
> > it
> > > > > > Apache seg faults almost immediately after it starts. Any
ideas?
> > Here
> > > > > > is the script I used for configure:
> > > > > > ./configure \
> > > > > > --enable-track-vars \
> > > > > > --disable-debug \
> > > > > > --with-config-file-path=/usr/local/apache/conf \
> > > > > > --with-apxs=/usr/local/CommNav/sbin/apxs \
> > > > > > --with-ftp \
> > > > > > --with-imap \
> > > > > > --enable-wddx \
> > > > > > --enable-xml \
> > > > > > --with-mysql \
> > > > > > --with-gettext \
> > > > > > --with-ldap=/usr/local/openldap \
> > > > > > --with-oci8=/usr/local/oracle/product/8.1.5
> > > > > >
> > > > > > --
> > > > > > PHP 4.0 Beta Mailing List
> > > > > > <http://www.php.net/version4/>
> > > > > > To unsubscribe, e-mail: php4beta-unsubscribe@lists.php.net
> > > > > > For additional commands, e-mail: php4beta-help@lists.php.net
> > > > > > To contact the list administrators, e-mail:
> > php4beta-admin@lists.php.net
> > > > >
> > > > > --
> > > > > PHP 4.0 Beta Mailing List
> > > > > <http://www.php.net/version4/>
> > > > > To unsubscribe, e-mail: php4beta-unsubscribe@lists.php.net
> > > > > For additional commands, e-mail: php4beta-help@lists.php.net
> > > > > To contact the list administrators, e-mail:
> > php4beta-admin@lists.php.net
> > > > >
> > > > >
> > > >
> > > >
> > > > --
> > > > PHP 4.0 Beta Mailing List
> > > > <http://www.php.net/version4/>
> > > > To unsubscribe, e-mail: php4beta-unsubscribe@lists.php.net
> > > > For additional commands, e-mail: php4beta-help@lists.php.net
> > > > To contact the list administrators, e-mail:
php4beta-admin@lists.php.net
> > >
> > > --
> > >
> > > Thies C. Arntzen "One Big-Mac, Small Fries and a
Coke!"
> > > Digital Collections Phone +49 40 235350 Fax +49 40
23535180
> > > Hammerbrookstr. 93 20097 Hamburg /
Germany
> > >
> > > --
> > > PHP 4.0 Beta Mailing List
> > > <http://www.php.net/version4/>
> > > To unsubscribe, e-mail: php4beta-unsubscribe@lists.php.net
> > > For additional commands, e-mail: php4beta-help@lists.php.net
> > > To contact the list administrators, e-mail:
php4beta-admin@lists.php.net
> > >
> > >
>
> --
>
> Thies C. Arntzen "One Big-Mac, Small Fries and a Coke!"
> Digital Collections Phone +49 40 235350 Fax +49 40 23535180
> Hammerbrookstr. 93 20097 Hamburg / Germany
>