memcache.so, неправильная архитектура в Unknown в строке 0 в MAMP
Я устанавливаю memcache из pecl и получаю memcache.so. После этого я добавляю в php.ini, но я получил ошибку.
[12 августа 2010 г. 13:02:24] Предупреждение PHP: Запуск PHP: невозможно загрузить динамическую библиотеку "/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): подходящее изображение не найдено. Обнаружил: /Applications/MAMP/bin/php5.3/lib/php/extensions/no-debug-non-zts-20090626/memcache.so: mach-o, но неверная архитектура в Неизвестно в строке 0
Я старался
$file /Applications/MAMP/bin/php5.3/lib/php/extensions/no-debug-non-zts-20090626/memcache.so
я получил
/Applications/MAMP/bin/php5.3/lib/php/extensions/no-debug-non-zts-20090626/memcache.so: 64-разрядный пакет Mach-O x86_64
Я использую Mac OS x 10.6.4 64bit
2 ответа
Я думаю, это вероятно, потому что php не собран в 64-битной версии, поэтому вы пытаетесь загрузить 64-битный модуль в 32-битное приложение, и, конечно, он не будет работать.
Вы можете проверить это, запустив file
на бинарном PHP (или PHP-модуль, если используется в качестве модуля)
Основной ответ очень помог мне выяснить, что я неправильно скомпилировал, но для правильной компиляции модуля я понял, что это работает для меня:
$ 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