1 votos

No se puede compilar PHP 5.6.1 desde el código fuente

Estoy tratando de compilar PHP 5.6.1 en mi MacBook Pro pero no puedo pasar todos los problemas.

Se me atasca el mensaje de error al hacer:

clang: error: linker command failed with exit code 1 (use -v to see invocation)
Makefile:138: recipe for target 'libs/libphp5.bundle' failed
make: *** [libs/libphp5.bundle] Error 1

He compilado el Apache v. 2.4.10 desde el código fuente con las opciones de configuración:

sudo ./configure --prefi=/usr/local/apache2 --enable-so --enable-modules=most

Apache funciona normalmente.

Mis opciones de configuración para PHP:

sudo ./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache2/bin/apxs --disable-ipv6 --enable-dtrace --with-zlib --with-curl=/usr/local/cURL --enable-ftp --enable-mbstring --with-mcrypt=/usr/local/libmcrypt --with-mysqli=/usr/local/mysql/bin/mysql_config --enable-opcache=no

No puedo pasar el proceso de fabricación. Lo he intentado todo: sudo make clean no ayuda. He reinstalado Xcode y CommandLineTools. Y he probado todo lo que he podido encontrar buscando en la web pero sin éxito.

¿Alguien sabe por qué no funciona?

Mi último recurso sería reinstalar mavericks (si algo se sobreescribió o se rompió) pero ese es el último recurso que quiero tomar y empezar de nuevo en una copia fresca.

Gracias por toda su ayuda.

A la espera de mi investigación: PHP sólo arroja el error al intentar configurarlo con mysqli.

Undefined symbols for architecture x86_64:
  "_dns_free", referenced from:
      _zif_dns_check_record in dns.o
      _zif_dns_get_record in dns.o
      _zif_dns_get_mx in dns.o
  "_dns_open", referenced from:
      _zif_dns_check_record in dns.o
      _zif_dns_get_record in dns.o
      _zif_dns_get_mx in dns.o
  "_dns_search", referenced from:
      _zif_dns_check_record in dns.o
      _zif_dns_get_record in dns.o
      _zif_dns_get_mx in dns.o
  "_res_9_dn_expand", referenced from:
      _php_parserr in dns.o
      _zif_dns_get_mx in dns.o
  "_res_9_dn_skipname", referenced from:
      _zif_dns_get_record in dns.o
      _zif_dns_get_mx in dns.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make: *** [libs/libphp5.bundle] Error 1

¿Qué me falta?

1voto

nvukovic Puntos 26

He conseguido encontrar el problema.

Elimina la instalación anterior y luego:

--with-mysqli : Utilicé el driver nativo de MySql ( omití la ruta de la carpeta )

Así que cuando te olvides de añadir un módulo a tu compilación inicial y te encuentres con algún tipo de error raro borra la instancia antigua que se instaló con éxito y haz el ./configure ; make clean ; make ; make install sólo para estar seguros:)

Gracias a David Parker por ayudarme con el problema.

Gracias David.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X