php-install Digest 27 Nov 2001 06:27:19 -0000 Issue 573

Topics (messages 5087 through 5093):

Again, Segfault with Aolserver, PHP, SquirrelMail
        5087 by: Sean Redmond
        5088 by: Scott Goodwin
        5090 by: Sean Redmond

PHP Compile Problem
        5089 by: Devin Atencio

php with apxs and mysql on Darwin
        5091 by: Erik Price
        5092 by: Chris

df
        5093 by: tony

Administrivia:

To subscribe to the digest, e-mail:
        [EMAIL PROTECTED]

To unsubscribe from the digest, e-mail:
        [EMAIL PROTECTED]

To post to the list, e-mail:
        [EMAIL PROTECTED]


----------------------------------------------------------------------
--- Begin Message ---
Hello,

No one seems to want to touch this, not on the Aolserver list, not on the 
PHP list, not on the SquirrelMail list. However, I'm going to try again.

On a server running RedHat Linux 7.2, I've got Aolserver 3.4.2 compiled and 
working fine, and PHP 4.0.6 compiled as a module and working fine except 
when it segfaults. It occurs consistently when loading SquirrelMail's 
(1.2.0-rc2) src/right_main.php, though I think the problem is really in the 
called function sqi_mailbox_list from functions/imap_mailbox.php. Exactly 
what the server is trying to do when it crashes I haven't yet figured out.

The PHP source distribution warns about trouble with multi-threaded 
servers, but the suggested workaround, removing a line of code, refers to a 
line that no longer appears to be in the code anyway.

Has anyone had a similar problem? Can anyone help me solve this problem or 
debug it more accurately? I currently have Aolserver 3.0, SquirrelMail 
1.0.6, and PHP 4.0.6 running with no problems on another server under 
RedHat 6.2 (I'm trying to migrate our webmail onto a new machine) so this 
is very frustrating.

Thanks.

Sean Redmond
Brooklyn Museum of Art

--- End Message ---
--- Begin Message ---
Hi Sean,

have you run AOLserver under GDB yet to find out where it is segfaulting?
Here's an example of how to do that.

Put this into a file called gdbinit, substituting the things in parens with 
something appropriate and adjusting pathnames:

======= BEGIN : CUT ==============
directory /usr/local/src/aolserver
directory /usr/local/src/(other source dir)
directory /usr/local/src/(other source dir)

set args -f -u (user) -g (group) -t /usr/local/aolserver/nsd.tcl -s 
(servername)

run
========== END : CUT ============

then run:

gdb -x gdbinit /usr/local/bin/aolserver/bin/nsd



After the process segfaults, type "bt" at the GDB> prompt (bt = backtrace).

This should give you the function, source code line # etc. of where the 
fault is occurring.

/s.



> Hello,
> 
> No one seems to want to touch this, not on the Aolserver list, not on the
> PHP list, not on the SquirrelMail list. However, I'm going to try again.
> 
> On a server running RedHat Linux 7.2, I've got Aolserver 3.4.2 compiled 
and
> working fine, and PHP 4.0.6 compiled as a module and working fine except
> when it segfaults. It occurs consistently when loading SquirrelMail's
> (1.2.0-rc2) src/right_main.php, though I think the problem is really in 
the
> called function sqi_mailbox_list from functions/imap_mailbox.php. Exactly
> what the server is trying to do when it crashes I haven't yet figured out.
> 
> The PHP source distribution warns about trouble with multi-threaded
> servers, but the suggested workaround, removing a line of code, refers to 
a
> line that no longer appears to be in the code anyway.
> 
> Has anyone had a similar problem? Can anyone help me solve this problem or
> debug it more accurately? I currently have Aolserver 3.0, SquirrelMail
> 1.0.6, and PHP 4.0.6 running with no problems on another server under
> RedHat 6.2 (I'm trying to migrate our webmail onto a new machine) so this
> is very frustrating.
> 
> Thanks.
> 
> Sean Redmond
> Brooklyn Museum of Art
> 
> 
> 


--- End Message ---
--- Begin Message ---
At 03:27 PM 11/26/2001 -0500, you wrote:
>have you run AOLserver under GDB yet to find out where it is segfaulting?

Thanks. The problem seems to be that in the statement

     include "../src/load_prefs.php";

The relative path is expanded to

     
/usr/local/aolserver-3.4.2/servers/webmail/pages/squirrelmail-1.2.0-rc2/src/../src/load_prefs.php

instead of:

     
/usr/local/aolserver-3.4.2/servers/webmail/pages/squirrelmail-1.2.0-rc2/src/load_prefs.php

I.e the ".." is not treated correctly.

Here is the relevant output from gdb:

[New Thread 6151 (LWP 26839)]

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 6151 (LWP 26839)]
0x400afdd3 in canonicalize (
     name=0x4083b278 
"/usr/local/aolserver-3.4.2/servers/webmail/pages/squirrelmail-1.2.0-rc2/src/../src/load_prefs.php",
 
resolved=0x4053414c "")
     at canonicalize.c:88
88      canonicalize.c: No such file or directory.
         in canonicalize.c
(gdb) bt
#0  0x400afdd3 in canonicalize (
     name=0x4083b278 
"/usr/local/aolserver-3.4.2/servers/webmail/pages/squirrelmail-1.2.0-rc2/src/../src/load_prefs.php",
 
resolved=0x4053414c "")
     at canonicalize.c:88
#1  0x402be679 in virtual_file_ex (state=0x40535184,
     path=0x40665cd4 "../src/load_prefs.php", verify_path=0)
     at tsrm_virtual_cwd.c:299
#2  0x402423cc in expand_filepath (
     filepath=0x40665cd4 "../src/load_prefs.php", real_path=0x0)
     at fopen_wrappers.c:531
#3  0x40241a3f in php_fopen_and_set_opened_path (
     path=0x40665cd4 "../src/load_prefs.php", mode=0x402d2627 "rb",
     opened_path=0x405373b4) at fopen_wrappers.c:237
#4  0x40242059 in php_fopen_with_path (
     filename=0x40665cd4 "../src/load_prefs.php", mode=0x402d2627 "rb",
     path=0x8178b38 
".:/usr/local/lib/php:/home/aol30/webmail/pages/webmail/src", 
opened_path=0x405373b4) at fopen_wrappers.c:391
#5  0x40242288 in php_fopen_url_wrapper (
     path=0x40665cd4 "../src/load_prefs.php", mode=0x402d2627 "rb",
     options=1, issock=0x405372d0, socketd=0x405372d4, opened_path=0x405373b4)
     at fopen_wrappers.c:470
#6  0x4023fc81 in php_fopen_wrapper_for_zend (
     filename=0x40665cd4 "../src/load_prefs.php", opened_path=0x405373b4)
     at main.c:477
#7  0x40239074 in open_file_for_scanning (file_handle=0x405373ac,
     compiler_globals=0x40630900) at zend_language_scanner_cc.cc:2899
#8  0x402394ee in compile_file (file_handle=0x405373ac, type=2,
     compiler_globals=0x40630900) at zend_language_scanner_cc.cc:2966
#9  0x4023966b in compile_filename (type=2, filename=0x406d92bc,
     compiler_globals=0x40630900, executor_globals=0x4061f440)
     at zend_language_scanner_cc.cc:3022
#10 0x40224016 in execute (op_array=0x406be8d0, executor_globals=0x4061f440)
     at ./zend_execute.c:2028
#11 0x40221da3 in execute (op_array=0x40774028, executor_globals=0x4061f440)
     at ./zend_execute.c:1544
#12 0x40221da3 in execute (op_array=0x407721a0, executor_globals=0x4061f440)
     at ./zend_execute.c:1544
#13 0x40221da3 in execute (op_array=0x4075b340, executor_globals=0x4061f440)
     at ./zend_execute.c:1544
#14 0x40221da3 in execute (op_array=0x40643c3c, executor_globals=0x4061f440)
     at ./zend_execute.c:1544
#15 0x4023016d in zend_execute_scripts (type=8, compiler_globals=0x40630900,
     executor_globals=0x4061f440, file_count=3) at zend.c:752
#16 0x40241167 in php_execute_script (primary_file=0x405436cc,
     compiler_globals=0x40630900, executor_globals=0x4061f440,
     core_globals=0x4061f740) at main.c:1206
#17 0x4023ef32 in php_ns_module_main (ns_context=0x40625bb0,
     sapi_globals=0x40632968) at aolserver.c:434
#18 0x4023f17f in php_ns_request_handler (context=0x8187c08, conn=0x819dc60)
     at aolserver.c:519
#19 0x08077bb7 in Ns_ConnRunRequest (conn=0x819dc60) at op.c:196
#20 0x0807e2c2 in ConnRun (connPtr=0x819dc60) at serv.c:882
#21 0x0807dc10 in NsConnThread (arg=0x40604300) at serv.c:671
#22 0x0811833b in NsThreadMain (arg=0x40604310) at thread.c:228
#23 0x4002ec6f in pthread_start_thread (arg=0x40543be0) at manager.c:284
#24 0x4002ed5f in pthread_start_thread_event (arg=0x40543be0)
     at manager.c:308



Sean Redmond
Brooklyn Museum of Art

--- End Message ---
--- Begin Message ---

I have tried to compile Apache 2.0.28 Beta with PHP 4.1.0RC3 and
It compiles just fine but when I try to start Apache it fails
For some reason. I am running FreeBSD 4.4-RELEASE. Any ideas?

Syntax error on line 240 of /usr/local/etc/apache/httpd.conf:
Cannot load /usr/local/libexec/apache/libphp4.so into server: 

/usr/local/libexec/apache/libphp4.so: Undefined symbol
"pthread_getspecific"
/usr/local/sbin/apachectl start: httpd could not be started


                      __\/__ 
                  .  / ^  _ \  . 
                  |\| (o)(o) |/| 
#----------------.OOOo--oo--oOOO.-----------# 
#                                           # 
#   Devin Atencio     [EMAIL PROTECTED]     # 
#   Sys Admin Dept                          # 
#_________________________Oooo._____________# 
                  .oooO   (   ) 
                  (   )    ) / 
                   \ (    (_/ 
                    \_)
 


--- End Message ---
--- Begin Message ---
Hello, all:

I am a new subscriber to this list, so forgive me if I've overlooked a 
tutorial or FAQ on this topic somewhere.

I am trying to install PHP 4.0.6 from source as a dynamic module into 
Apache 1.3.22 with MySQL access enabled on my Darwin 1.4.1 system.  I'm 
having trouble with the MySQL part.  I can get PHP up and running 
without MySQL, but for some reason the compile fails when I include the 
--with-mysql=/usr/local/mysql option to the ./configure command.

Here is my setup:

Apache 1.3.22 installed from source with the following ./configure 
options:
--enable-module=most
--enable-module-max

    The mod_dav DSO installed from source with the following ./configure 
option:
    --with-apxs=/usr/sbin/apxs

    The mod_hfs DSO installed from source with no ./configure options
    (this is a minor mod that spares Apache from headaches with Darwin's
    case-insensitivity)

MySQL 3.23.45 installed from source with the following ./configure 
options:
--prefix=/usr/local/mysql
--with-unix-socket-path=/usr/local/mysql/run/mysql_socket
--with-mysql-user=mysqladm
--with-comment
--with-debug

Nothing gives me any problems -- it all works great.  And I've added 
PHP4 as well:

$ cd apache_mod_php-6-2/php
$ ./configure --with-xml --with-zlib --with-apxs=/usr/sbin/apxs
$ make
$ sudo make install

So I know that everything is fine except when I try to use the 
--with-mysql option.  When I tried it:

$ cd apache_mod_php-6-2/php
$ ./configure --with-xml --with-zlib --with-apxs=/usr/sbin/apxs 
--with-mysql=/usr/local/mysql
(echoed configure output omitted)
$ make

The problem is here.  I get the following output (after 'make' is 
finished):

*** Warning: This library needs some functionality provided by 
-lmysqlclient.
*** I have the capability to make that library automatically link in when
*** you link to this library.  But I can only do this if you have a
*** shared version of the library, which you do not appear to have.

*** Warning: This library needs some functionality provided by 
-lmysqlclient.
*** I have the capability to make that library automatically link in when
*** you link to this library.  But I can only do this if you have a
*** shared version of the library, which you do not appear to have.

*** Warning: libtool could not satisfy all declared inter-library
*** dependencies of module libphp4.  Therefore, libtool will create
*** a static module, that should work as long as the dlopening
*** application is linked with the -dlopen flag.
~/tmp/apache_mod_php-6-2/php/.libs/libphp4.lax/libZend.al
~/tmp/apache_mod_php-6-2/php/.libs/libphp4.lax/libsapi.al
~/tmp/apache_mod_php-6-2/php/.libs/libphp4.lax/libmain.al
~/tmp/apache_mod_php-6-2/php/.libs/libphp4.lax/libregex.al
~/tmp/apache_mod_php-6-2/php/.libs/libphp4.lax/libzlib.al
~/tmp/apache_mod_php-6-2/php/.libs/libphp4.lax/libmysql.al
~/tmp/apache_mod_php-6-2/php/.libs/libphp4.lax/libpcre.al
~/tmp/apache_mod_php-6-2/php/.libs/libphp4.lax/libposix.al
~/tmp/apache_mod_php-6-2/php/.libs/libphp4.lax/libsession.al
~/tmp/apache_mod_php-6-2/php/.libs/libphp4.lax/libstandard.al
~/tmp/apache_mod_php-6-2/php/.libs/libphp4.lax/libxml.al
~/tmp/apache_mod_php-6-2/php/.libs/libphp4.lax/libtsrm.al
~/tmp/apache_mod_php-6-2/php/.libs
Making all in pear

$

Am I missing the 'lmysqlclient.so' file?  Should it be found in the 
MySQL source tree?  Because I don't have that file anywhere on my 
system, yet it seems that PHP and MySQL are designed to work well with 
each other.  Why would I not have this vital file?

If anyone can help me with this problem, I would be eternally 
grateful -- I need to have this operational in less than two days!  (Or 
I lose my job.)

Thanks very much,

Erik Price

--- End Message ---
--- Begin Message ---
Hello Erik and all,
 read further down. ;-)

> Hello, all:
> 
> I am a new subscriber to this list, so forgive me if I've overlooked a 
> tutorial or FAQ on this topic somewhere.
> 
> I am trying to install PHP 4.0.6 from source as a dynamic module into 
> Apache 1.3.22 with MySQL access enabled on my Darwin 1.4.1 system.  I'm
>  having trouble with the MySQL part.  I can get PHP up and running 
> without MySQL, but for some reason the compile fails when I include the
>  --with-mysql=/usr/local/mysql option to the ./configure command.

I had a similar *mis*understanding when I attempted to install
*other* modules with the PHP /configure/install.

Your line (where mysql is concerned) should read:
--with-mysql=/usr/local *not*
--with-mysql=/usr/local/mysql as you used.

That *should* get it for you. :-)


Best wishes,
 Chris


> 
> Here is my setup:
> 
> Apache 1.3.22 installed from source with the following ./configure 
> options:
> --enable-module=most
> --enable-module-max
> 
>    The mod_dav DSO installed from source with the following ./configure
>    
> option:
>    --with-apxs=/usr/sbin/apxs
> 
>    The mod_hfs DSO installed from source with no ./configure options
>    (this is a minor mod that spares Apache from headaches with Darwin's
>    case-insensitivity)
> 
> MySQL 3.23.45 installed from source with the following ./configure 
> options:
> --prefix=/usr/local/mysql
> --with-unix-socket-path=/usr/local/mysql/run/mysql_socket
> --with-mysql-user=mysqladm
> --with-comment
> --with-debug
> 
> Nothing gives me any problems -- it all works great.  And I've added 
> PHP4 as well:
> 
> $ cd apache_mod_php-6-2/php
> $ ./configure --with-xml --with-zlib --with-apxs=/usr/sbin/apxs
> $ make
> $ sudo make install
> 
> So I know that everything is fine except when I try to use the 
> --with-mysql option.  When I tried it:
> 
> $ cd apache_mod_php-6-2/php
> $ ./configure --with-xml --with-zlib --with-apxs=/usr/sbin/apxs 
> --with-mysql=/usr/local/mysql
> (echoed configure output omitted)
> $ make
> 
> The problem is here.  I get the following output (after 'make' is 
> finished):
> 
> *** Warning: This library needs some functionality provided by 
> -lmysqlclient.
> *** I have the capability to make that library automatically link in
> when *** you link to this library.  But I can only do this if you have
> a *** shared version of the library, which you do not appear to have.
> 
> *** Warning: This library needs some functionality provided by 
> -lmysqlclient.
> *** I have the capability to make that library automatically link in
> when *** you link to this library.  But I can only do this if you have
> a *** shared version of the library, which you do not appear to have.
> 
> *** Warning: libtool could not satisfy all declared inter-library
> *** dependencies of module libphp4.  Therefore, libtool will create ***
> a static module, that should work as long as the dlopening
> *** application is linked with the -dlopen flag.
> ~/tmp/apache_mod_php-6-2/php/.libs/libphp4.lax/libZend.al
> ~/tmp/apache_mod_php-6-2/php/.libs/libphp4.lax/libsapi.al
> ~/tmp/apache_mod_php-6-2/php/.libs/libphp4.lax/libmain.al
> ~/tmp/apache_mod_php-6-2/php/.libs/libphp4.lax/libregex.al
> ~/tmp/apache_mod_php-6-2/php/.libs/libphp4.lax/libzlib.al
> ~/tmp/apache_mod_php-6-2/php/.libs/libphp4.lax/libmysql.al
> ~/tmp/apache_mod_php-6-2/php/.libs/libphp4.lax/libpcre.al
> ~/tmp/apache_mod_php-6-2/php/.libs/libphp4.lax/libposix.al
> ~/tmp/apache_mod_php-6-2/php/.libs/libphp4.lax/libsession.al
> ~/tmp/apache_mod_php-6-2/php/.libs/libphp4.lax/libstandard.al
> ~/tmp/apache_mod_php-6-2/php/.libs/libphp4.lax/libxml.al
> ~/tmp/apache_mod_php-6-2/php/.libs/libphp4.lax/libtsrm.al
> ~/tmp/apache_mod_php-6-2/php/.libs
> Making all in pear
> 
> $
> 
> Am I missing the 'lmysqlclient.so' file?  Should it be found in the 
> MySQL source tree?  Because I don't have that file anywhere on my 
> system, yet it seems that PHP and MySQL are designed to work well with 
> each other.  Why would I not have this vital file?
> 
> If anyone can help me with this problem, I would be eternally 
> grateful -- I need to have this operational in less than two days!  (Or
>  I lose my job.)
> 
> Thanks very much,
> 
> Erik Price
> 
> 
> -- 
> PHP Install Mailing List (http://www.php.net/)
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> To contact the list administrators, e-mail:
> [EMAIL PROTECTED]


-- 
end


............................................
This email was sent using DNSWATCH WebMail.
   "Get an account today!"
http://www.dnswatch.com/dnswm112/


--- End Message ---
--- Begin Message ---
df

-- 
 __________________
|   ³Ô·¹²»³Ô²Ë    |
|   ʡǮ̸Áµ°®    |
 ------------------
--- End Message ---

Reply via email to