Estoy intentando instalar la extensión expect pecl.
Versión del sistema operativo = 10.7.3
PHP versión 5.3.10 instalada a través de macports
se espera la versión 5.45 instalada a través de macports
El comando que estoy ejecutando:
sudo pecl -d preferred_state=beta install expect
falla conld: library not found for -lexpect
El libexpect5.45.dylib
archivo se encuentra en /opt/local/lib
. El resultado completo del comando de instalación esaquí.
Por lo que puedo decir, pecl simplemente no puede encontrar la biblioteca libexpect, incluso intenté anteponer:
LD_LIBRARY_PATH=/opt/local/lib/expect5.45
LD_LIBRARY_PATH=/System/Library/Tcl/8.5/expect5.45
LD_LIBRARY_PATH=/opt/local/lib
Cada ubicación tiene un expect5.45.dylib
archivo. No ayudó. ¿Alguien puede ayudarme a descubrir cómo instalar esta extensión?
Respuesta1
LD_LIBRARY_PATH
no se usa en OS X, y la variable de entorno equivalente no afecta ld
(y puede dañar otras cosas, ya que, a diferencia de Linux, es toda la ruta de la biblioteca, lo que significa que libSystem.dylib
ya no se encontrarán bibliotecas críticas como ésta; por otro lado, sudo
limpia su medio ambiente, por lo que no funcionaría de todos modos). Además, el nombre de esa biblioteca no coincidiría -lexpect
.
Por si sirve de algo, port contents expect
en mi sistema Lion me muestra una /opt/local/lib/libexpect.a
biblioteca estática (y libexpect5.45.a
) pero no dylib. ¿Estás seguro de que está instalado correctamente? Verifique la salida de port contents expect
.
Respuesta2
Bien, gracias a la solución de problemas y a las ideas de @geekosaur, la respuesta es "pecl no está generando un script libtool correcto para instalar esta extensión en MacOSX", al menos en mi configuración de todos modos. Realmente aprecio la discusión y la resolución de problemas. Por supuesto, mi próxima pregunta será: "¿Cómo soluciono el script de instalación pecl?" Pero eso es para otro foro... :)