memcache.so, arquitetura errada em Unknown na linha 0 no MAMP

memcache.so, arquitetura errada em Unknown na linha 0 no MAMP

Eu instalo o memcache do pecl e obtive o memcache.so. Depois disso adicionei php.ini mas recebi um erro.

[12-Aug-2010 13:02:24] Aviso de PHP: Inicialização do PHP: Não é possível carregar a biblioteca dinâmica '/Applications/MAMP/bin/php5.3/lib/php/extensions/no-debug-non-zts-20090626 /memcache.so' - dlopen(/Applications/MAMP/bin/php5.3/lib/php/extensions/no-debug-non-zts-20090626/memcache.so, 9): nenhuma imagem adequada encontrada. Encontrou: /Applications/MAMP/bin/php5.3/lib/php/extensions/no-debug-non-zts-20090626/memcache.so: mach-o, mas arquitetura errada em Unknown na linha 0

tentei

$ arquivo /Applications/MAMP/bin/php5.3/lib/php/extensions/no-debug-non-zts-20090626/memcache.so

Eu obtive

/Applications/MAMP/bin/php5.3/lib/php/extensions/no-debug-non-zts-20090626/memcache.so: Pacote Mach-O de 64 bits x86_64

Estou usando Mac OS x 10.6.4 64 bits

Responder1

Eu acho que provavelmente é porque o php não é compilado em 64 bits, então você está tentando carregar um módulo de 64 bits em um aplicativo de 32 bits e é claro que não funcionará.
Você pode verificar isso executando fileem php binário (ou módulo php se usado como módulo)

Responder2

A resposta principal ajudou muito a descobrir que compilei errado, mas para compilar o módulo corretamente achei que funcionou para mim:

$ cd your-php-module
$ /Applications/MAMP/bin/php5/bin/phpize
$ ./configure CFLAGS="-arch i386" --with-php-config="/Applications/MAMP/bin/php5/bin/php-config"
$ make
$ make install

informação relacionada