ID: 27011
User updated by: ehicks at binarymagi dot com
Reported By: ehicks at binarymagi dot com
Status: Open
Bug Type: PCRE related
Operating System: Solaris 9
PHP Version: 4CVS-2004-01-23
New Comment:
Just in case it helps, here's my uname as well.
[EMAIL PROTECTED] root]# uname -a
SunOS lurch 5.9 Generic_112233-11 sun4u sparc SUNW,Ultra-250
Previous Comments:
------------------------------------------------------------------------
[2004-01-26 18:09:56] ehicks at binarymagi dot com
Well, LD_LIBRARY_PATH creates binaries that depend on it whereas -L/R
flags to the linker appear to embed the information directly into the
executable. All a user has to do is break that environment variable
and all of a sudden anything compiled depending on it break as well. I
prefer the method that makes it as difficult for my users to screw
things up as possible. :)
Even with everything but PCRE stripped out I still get the same seg
fault.Only things I can think of are that it could be a problem with
gcc (a 64bit-enabled version of 3.3.2) or some change of Sun's between
Solaris 2.6 (?) and 9. Or maybe something to do with the Ultrasparc
processors that I have. I just don't know.
Any other ideas? I'm fresh out.
------------------------------------------------------------------------
[2004-01-26 03:56:23] [EMAIL PROTECTED]
I tried with this configure line:
# ./configure --disable-all --enable-debug --with-pcre-regex
# uname -a
SunOS pf-i400 5.6 Generic_105181-33 sun4u sparc SUNW,Ultra-30 Solaris
And I didn't get any crash with your short script..
------------------------------------------------------------------------
[2004-01-26 03:46:35] [EMAIL PROTECTED]
Solaris has 'LD_LIBRARY_PATH' environment variable (it's actually
common to all unix variants?) in which you can put any 'exotic' library
paths.
And FYI: with the configure line you provided in this bug report,
you're NOT using the external PCRE library, the bundled PCRE 4.5 is
used.
------------------------------------------------------------------------
[2004-01-26 02:30:47] ehicks at binarymagi dot com
Solaris does not have an ld.so.conf file so the LDFLAGS are manditory
in order for the final module to execute properly.
I did remove the CFLAGS, though, and it compiled and ran just fine. I
also recompiled PCRE without the CFLAGS and it also seems alright.
It's still crashes when I execute the preg_match_all, though.
I have also tried this on a Linux server and it worked just fine so it
must be something unique to Solaris or Ultrasparc systems. If someone
would like an account on my server to experiment on I would be happy to
give them one.
------------------------------------------------------------------------
[2004-01-24 23:58:56] [EMAIL PROTECTED]
I can not reproduce this crash in Linux.
Try recompiling PHP without setting CFLAGS / LDFLAGs.
------------------------------------------------------------------------
The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
http://bugs.php.net/27011
--
Edit this bug report at http://bugs.php.net/?id=27011&edit=1