Edit report at http://bugs.php.net/bug.php?id=51847&edit=1

 ID:               51847
 Updated by:       ras...@php.net
 Reported by:      php-bugs-2010 at ryandesign dot com
 Summary:          php 5.2.13 and gettext 0.18: Undefined symbols:
                   _zif_setlocale
-Status:           Open
+Status:           Closed
 Type:             Bug
 Package:          Compile Failure
 Operating System: Mac OS X 10.6.3 x86_64
 PHP Version:      5.2.13
-Assigned To:      
+Assigned To:      rasmus

 New Comment:

Fixed in all branches in svn


Previous Comments:
------------------------------------------------------------------------
[2010-06-02 07:53:15] ras...@php.net

Automatic comment from SVN on behalf of rasmus
Revision: http://svn.php.net/viewvc/?view=revision&revision=300085
Log: Fix for bug #51847
Someone in libintl world decided it was a good idea to do:

#undef setlocale
#define setlocale libintl_setlocale

That means, of course, that any use of "setlocale" by the
preprocessor now becomes libintl_setlocale which means we
no longer have a _zif_setlocale symbol in string.o, but we
magically have a _zif_libintl_setlocale symbol.  The linker
is obviously not very happy about this when basic_functions.o
tries to find _zif_setlocale.

So, let's not do that again.

------------------------------------------------------------------------
[2010-06-02 07:35:18] ras...@php.net

I think this has to do with libintl.  I see:



#undef setlocale

#define setlocale libintl_setlocale



in libintl.h which is obviously going to make a mess of things.



So, a quick compile fix is to skip the #include libintl.h in
ext/standard/string.c but someone should really give the libintl dev who
decided that was a good idea a "pat" on the back.

------------------------------------------------------------------------
[2010-05-18 12:18:08] php-bugs-2010 at ryandesign dot com

php 5.3.2 builds fine with gettext 0.17 and 0.18. 

This issue only appears to affect php 5.2.x.



Adding '#include "ext/standard/php_string.h"' to 

ext/standard/basic_functions.c does not change the 

error message.

------------------------------------------------------------------------
[2010-05-18 10:04:40] ka...@php.net

Hi



Does this happen with 5.3 aswell? Does adding the following include
after including 'ext/standard/php_uuencode.h' work:



#include "ext/standard/php_string.h"

------------------------------------------------------------------------
[2010-05-18 05:09:31] php-bugs-2010 at ryandesign dot com

Modify summary.

------------------------------------------------------------------------


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=51847


-- 
Edit this bug report at http://bugs.php.net/bug.php?id=51847&edit=1

Reply via email to