Edit report at http://bugs.php.net/bug.php?id=50345&edit=1
ID: 50345
Comment by: rainer dot jung at kippdata dot de
Reported by: sle at ocf dot berkeley dot edu
Summary: nanosleep not detected properly on some solaris
versions
Status: Closed
Type: Bug
Package: Compile Failure
Operating System: Solaris 10
PHP Version: 5.3.1
Assigned To: jani
New Comment:
Unfortunately the issue needs to be reopened.
The change in revision 297960 reintroduced this problem, at least on
Solaris 8, but likely also on more modern Solaris.
Before the change library rt was added to EXTRA_LIBS, after the change
the symbol __nanosleep is found and the library no longer added. During
linking we then get (as expected):
Undefined first referenced
symbol in file
nanosleep
ext/standard/.libs/basic_functions.o
ld: fatal: Symbol referencing errors. No output written to sapi/cli/php
collect2: ld returned 1 exit status
make: *** [sapi/cli/php] Error 1
Observed for version 5.3.3.
Reverting the pseudo-optimization in r297960 fixes the issue.
Thanks for considering this,
Rainer
Previous Comments:
------------------------------------------------------------------------
[2009-12-02 18:01:36] [email protected]
Closing then. Thanks for testing.
------------------------------------------------------------------------
[2009-12-02 16:23:07] sle at ocf dot berkeley dot edu
The patch appears to have fixed the bug. I am now able to successfully
compile PHP 5.3 without modifying the generated Makefile. I'm running
the test suites right now, but everything appears to be working.
Thanks for your help!
------------------------------------------------------------------------
[2009-12-02 08:55:57] [email protected]
Please try using this snapshot:
http://snaps.php.net/php5.3-latest.tar.gz
For Windows:
http://windows.php.net/snapshots/
But in about 35 minutes earliest so that the fix gets in it. :)
------------------------------------------------------------------------
[2009-12-02 08:54:51] [email protected]
Automatic comment from SVN on behalf of jani
Revision: http://svn.php.net/viewvc/?view=revision&revision=291584
Log: - Fixed bug #50345 (nanosleep not detected properly on some solaris
versions)
------------------------------------------------------------------------
[2009-12-01 23:52:35] sle at ocf dot berkeley dot edu
-lrt is only mentioned in config.log when searching for -lcurl. I
suspect this is due to curl-config recommending -lrt for its linker
flags.
With regards to nanosleep,
### snip from config.log ###
configure:15225: checking for nanosleep
configure:15253: /usr/sfw/bin/gcc -o conftest -I/opt/ocf/include
-I/usr/sfw/incl
ude -I/opt/ocf/include -I/usr/sfw/include -D_POSIX_PTHREAD_SEMANTICS
-L/opt/ocf/
lib -R/opt/ocf/lib -L/usr/sfw/lib -R/usr/sfw/lib -R/usr/ucblib
-L/usr/ucblib con
ftest.c -lm -lnsl -lsocket 1>&5
Undefined first referenced
symbol in file
nanosleep /var/tmp//ccYTdffo.o
ld: fatal: Symbol referencing errors. No output written to conftest
### end snip ###
since the test failed, it shouldn't have been defined.
However, I do see the following later:
### snip from config.log ###
configure:15271: checking for __nanosleep
configure:15299: /usr/sfw/bin/gcc -o conftest -I/opt/ocf/include
-I/usr/sfw/incl
ude -I/opt/ocf/include -I/usr/sfw/include -D_POSIX_PTHREAD_SEMANTICS
-L/opt/ocf/
lib -R/opt/ocf/lib -L/usr/sfw/lib -R/usr/sfw/lib -R/usr/ucblib
-L/usr/ucblib con
ftest.c -lm -lnsl -lsocket 1>&5
### end snip ###
that test seems to be successful:
### snip from configure output ###
checking for nanosleep... no
checking for __nanosleep... yes
### end snip ###
------------------------------------------------------------------------
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/bug.php?id=50345
--
Edit this bug report at http://bugs.php.net/bug.php?id=50345&edit=1