Bug #52620 [NEW]: PHP fails to link as gethostuuid(2) does not exist on MacOS 10.4.11
| From: | tonywalton at btconnect dot com | Date: | Mon, 16 Aug 2010 15:17:54 +0000 |
| Subject: | Bug #52620 [NEW]: PHP fails to link as gethostuuid(2) does not exist on MacOS 10.4.11 | ||
| Groups: | php.bugs | ||
| Request: | Send a blank email to php-bugs+get-153481@lists.php.net to get a copy of this message | ||
From:
Operating system: Mac OS X 10.4.11
PHP version: 5.3.3
Package: Compile Failure
Bug Type: Bug
Bug description:PHP fails to link as gethostuuid(2) does not exist on MacOS 10.4.11
Description:
------------
$ uname -a
Darwin Tony-Waltons-MacBook.local 8.11.1 Darwin Kernel Version 8.11.1: Wed
Oct 10 18:23:28 PDT 2007; root:xnu-792.25.20~1/RELEASE_I386 i386 i386
$ './configure' '--prefix=/usr' '--mandir=/usr/share/man'
'--infodir=/usr/share/info' '--with-ldap=/usr' '--with-kerberos=/usr'
'--enable-cli' '--with-zlib-dir=/usr' '--enable-exif'
'--enable-ftp'
'--enable-mbstring' '--enable-mbregex' '--enable-sockets'
'--with-iodbc=/usr' '--with-curl=/usr' '--with-config-file-path=/etc'
'--sysconfdir=/private/etc' '--without-pear'
'--with-mysql=/usr/local/mysql' '--with-apxs' '--with-jpeg-dir'
'--with-gd'
'--enable-calendar'
$ make
(lots of make, some non-fatal errors mainly regarding pointer signedness.
Full make output is available if required)
The final link phase fails with
/usr/libexec/gcc/i686-apple-darwin8/4.0.1/ld: Undefined symbols:
_gethostuuid
collect2: ld returned 1 exit status
make: *** [libs/libphp5.bundle] Error 1
It seems that the call to gethostuuid() was introduced in PHP 5.3.3 in
ext/sqlite3/libsqlite/sqlite3.3 (at line 26934):
/* get the host ID via gethostuuid(), pHostID must point to PROXY_HOSTIDLEN
** bytes of writable memory.
*/
static int proxyGetHostID(unsigned char *pHostID, int *pError){
struct timespec timeout = {1, 0}; /* 1 sec timeout */
assert(PROXY_HOSTIDLEN == sizeof(uuid_t));
memset(pHostID, 0, PROXY_HOSTIDLEN);
if( gethostuuid(pHostID, &timeout) ){
int err = errno;
if( pError ){
*pError = err;
}
return SQLITE_IOERR;
}
MacOSX 10.4.11 has no gethostuuid(2) call; perhaps configure is at fault
and should sense the availability/nonavailability of the system call and
fall back to the PHP 5.3.2 behaviour if necessary (5.3.2 compiles and links
with no problem on this MacOSX release)
Expected result:
----------------
Clean compile/link
Actual result:
--------------
Link phase fails
--
Edit bug report at http://bugs.php.net/bug.php?id=52620&edit=1
--
Try a snapshot (PHP 5.2): http://bugs.php.net/fix.php?id=52620&r=trysnapshot52
Try a snapshot (PHP 5.3): http://bugs.php.net/fix.php?id=52620&r=trysnapshot53
Try a snapshot (trunk): http://bugs.php.net/fix.php?id=52620&r=trysnapshottrunk
Fixed in SVN: http://bugs.php.net/fix.php?id=52620&r=fixed
Fixed in SVN and need be documented: http://bugs.php.net/fix.php?id=52620&r=needdocs
Fixed in release: http://bugs.php.net/fix.php?id=52620&r=alreadyfixed
Need backtrace: http://bugs.php.net/fix.php?id=52620&r=needtrace
Need Reproduce Script: http://bugs.php.net/fix.php?id=52620&r=needscript
Try newer version: http://bugs.php.net/fix.php?id=52620&r=oldversion
Not developer issue: http://bugs.php.net/fix.php?id=52620&r=support
Expected behavior: http://bugs.php.net/fix.php?id=52620&r=notwrong
Not enough info: http://bugs.php.net/fix.php?id=52620&r=notenoughinfo
Submitted twice: http://bugs.php.net/fix.php?id=52620&r=submittedtwice
register_globals: http://bugs.php.net/fix.php?id=52620&r=globals
PHP 4 support discontinued: http://bugs.php.net/fix.php?id=52620&r=php4
Daylight Savings: http://bugs.php.net/fix.php?id=52620&r=dst
IIS Stability: http://bugs.php.net/fix.php?id=52620&r=isapi
Install GNU Sed: http://bugs.php.net/fix.php?id=52620&r=gnused
Floating point limitations: http://bugs.php.net/fix.php?id=52620&r=float
No Zend Extensions: http://bugs.php.net/fix.php?id=52620&r=nozend
MySQL Configuration Error: http://bugs.php.net/fix.php?id=52620&r=mysqlcfg