comstackr php 5.3.3 con extensión intl en Snow Leopard 10.6

Estoy tratando de comstackr php en mi mac.

He seguido este tutorial: http://www.malisphoto.com/tips/php-on-os-x.html
También he comprobado este post: Comstack PHP 5.3.2 con extensión intl en Snow Leopard 10.6.3

aquí están mis opciones de configuration:

  ./configure \
 --prefix = / usr \
 --with-apxs2 = / usr / sbin / apxs \
 --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 \
 --with-mysql-sock = / tmp \
 --with-mysql = / usr / local / mysql \
 --with-openssl = / usr \
 --with-xmlrpc \
 --with-xsl = / usr \
 - sin perlas \
 --with-libxml-dir = / usr \
 --with-iconv = / usr / local \
 --with-pdo-mysql = / usr / local / mysql / bin / mysql_config \
 --with-gd \
 --with-jpeg-dir = / opt / local \
 --with-png-dir = / opt / local \
 --with-freetype-dir = / opt / local \
 --with-mcrypt = / opt / local \
 --enable-intl \
 --with-icu-dir = / opt / local 

cambio de Makefile, substituya esto:

  $ ($) $ ($) $ ($) $ ($) $ ($) $ ($) $ ($) EXTRA_LIBS) $ (ZEND_EXTRA_LIBS) -o $ @ && cp $ @ libs / libphp $ (PHP_MAJOR_VERSION) .so 

a esto :

  ($) $ ($) $ ($) $ ($) $ ($) $ ($) $ ($) $ ($) ZEND_EXTRA_LIBS) $ (MH_BUNDLE_FLAGS) -o $ @ && cp $ @ libs / libphp $ (PHP_MAJOR_VERSION) .so 

También tenía este -lstdc ++ en EXTRA_LIBS en Makefile.

aquí está el post de error:

  En el file incluido desde /opt/local/include/unicode/utypes.h:36,
                  desde /usr/local/src/php-5.3.3/ext/intl/grapheme/grapheme.h:21,
                  desde /usr/local/src/php-5.3.3/ext/intl/php_intl.h:26,
                  desde main / internal_functions.c: 47:
 /opt/local/include/unicode/umachine.h308: error: networkingefinición de typedef 'UChar'
 /usr/include/libxml2/libxml/encoding.h:41: error: la statement previa de 'UChar' estaba aquí
 make: *** [main / internal_functions.lo] Error 1

Intenté otra build sin intl (borrar 2 últimas líneas en ./configure) y funciona.

¿Puede alguien explicarme el post de error, o indicar lo que puede estar mal en las opciones ./configure? Muchas gracias de antemano

Traté de hacer lo mismo y falló debido a una gran cantidad de errores del mismo tipo. Traté de corregir uno por uno y tengo uno más! Me "degradado" a php 5.2.14 y no tenía más problema.

O, de nuevo, podría crear libxml2 desde el package fuente más reciente y estable, lo que hice, ya que volver a 5.2 no era una opción y comstackr prácticamente todas las dependencies de php (libicu, también) manualmente en mi G4 dev: 1) get el último package fuente libxml2 de http://www.xmlsoft.org/downloads.html 2) comstackr libxml2: tar xf libxml2-sources-2.7.7.tar.gz cd libxml2-2.7.7 VER = 2.7.7 ./configure –enable-shanetworking –enable-static –prefix = / opt / libxml2 – $ {VER} make && make install cd / opt; rm -rf libxml2; ln -s libxml2 – $ {VER} libxml2 3) comstack php con –with-libxml-dir = / opt / libxml2 (no olvides rm config.cache por si no limpias todo entre tu configuration / bashs de compilation.)

espero que ayude, chris

Sé que esto es viejo, pero me encontré con el mismo problema. Simplemente comentando la línea

typedef uint16_t UChar; 

en /opt/local/include/unicode/umachine.h resolvió el problema para mí.

El problema es que tanto ICU como libxml2 definen el UChar. Este es el código problemático en libxml2, específicamente /usr/include/libxml2/libxml/encoding.h:

 #ifdef LIBXML_ICU_ENABLED /* Forward-declare UConverter here rather than pulling in <unicode/ucnv.h> * to prevent unwanted ICU symbols being exposed to users of libxml2. * One particular case is Qt4 conflicting on UChar32: <rdar://problem/5100933>. */ #include <stdint.h> struct UConverter; typedef struct UConverter UConverter; #ifdef _MSC_VER typedef wchar_t UChar; #else typedef uint16_t UChar; #endif #endif 

Si instalas libxml2 desde el origen, este código parece no estar allí, así que resolví el problema usando libxml2 instalado desde el origen.