Como atender às dependências necessárias para instalar a extensão expect pecl no Mac OS X?

1

Estou tentando instalar a extensão esperada pecl.

OS version = 10.7.3
PHP version 5.3.10 installed via macports
expect version 5.45 installed via macports

O comando que estou executando:

sudo pecl -d preferred_state=beta install expect

falha com ld: library not found for -lexpect

O arquivo libexpect5.45.dylib está localizado em /opt/local/lib . A saída completa do comando de instalação é aqui .

Pelo que eu posso dizer, o pecl simplesmente não consegue encontrar a biblioteca libexpect, eu até tentei prefixar:

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 local tem um arquivo expect5.45.dylib . Isso não ajudou. Alguém pode me ajudar a descobrir como instalar essa extensão?

    
por Ketema 05.04.2012 / 23:04

2 respostas

0

OK, por isso, graças a alguns problemas e percepções do @geekosaur, a resposta é "o pecl não está gerando um script de libtool correto para instalar esta extensão no MacOSX" pelo menos na minha configuração. Eu realmente aprecio a discussão e resolução de problemas. É claro que minha próxima pergunta será: "Como corrijo o script de instalação pecl?" Mas isso é para outra placa ...:)

    
por 06.04.2012 / 12:59
1

LD_LIBRARY_PATH não é usado no OS X, e a variável de ambiente equivalente não afeta ld (e pode quebrar outras coisas, já que ao contrário do Linux é todo o caminho da biblioteca, o que significa que bibliotecas críticas como libSystem.dylib não é mais encontrado, por outro lado, sudo limpa seu ambiente, por isso não funcionaria de qualquer maneira). Além disso, esse nome de biblioteca não corresponderia a -lexpect .

Por que vale a pena, port contents expect no meu sistema Lion me mostra uma biblioteca /opt/local/lib/libexpect.a estática (e libexpect5.45.a ), mas não dylib. Tem certeza de que está instalado corretamente? Verifique a saída de port contents expect .

    
por 05.04.2012 / 23:23