5 1 1 1 1 1 Rating 5.00 (1 Vote)

Если вы столкнулись с ошибкой, подобной той, что написана в заголовке, это может означать, что ваше приложение может не работать при попытке использовать расширение memcache из-за неправильной или отсутствующей сборки расширения.

“php: symbol lookup error: /usr/local/lib/php/extensions/no-debug-non-zts-20131226/memcache.so: undefined symbol: mmc_queue_pop”

Чтобы исправить эту проблему, вам нужно передать опцию «fgnu89-inline» компилятору с переменной среды CFLAGS при установке пакета через pecl. Эта опция указывает компилятору C использовать традиционную семантику GNU для встроенных функций. (Пожалуйста, проверьте раздел «Ссылки», чтобы получить более подробную информацию и другие параметры компилятора.)


Если модуль memcache был установлен из пакетов, нужно его удалить.

$ pecl uninstall memcache


После установим заново, но немного иначе

$ yes|CFLAGS="-fgnu89-inline" pecl install memcache-3.0.8


Готово!

Аналогичное решение можно применить при ручной сборке модуля. Нужно добавить "-fgnu89-inline" в переменную CFLAGS=. Чем я и занимался.
Статья частично переведена google translate,  времени доволить до ума небыло. Кому надо разберутся.