PHP Warning — /usr/local/lib/php/20100525/memcache.so: Undefined symbol «php_session_create_id»

Все время забываю как в FreeBSD лечится вот такая проблема:

root@web5:~# php -v
PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/local/lib/php/20100525/memcache.so' - /usr/local/lib/php/20100525/memcache.so: Undefined symbol "php_session_create_id" in Unknown on line 0
PHP 5.4.35 (cli) (built: Nov 22 2014 21:51:24)
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.4.0, Copyright (c) 1998-2014 Zend Technologies
root@web5:~#

Решение тривиальное, нужно просто пересобрать pecl-memcache:

root@web5:~# cd /usr/ports/databases/pecl-memcache
root@web5:/usr/ports/databases/pecl-memcache# make deinstall
===>  Deinstalling for pecl-memcache
===>   Deinstalling pecl-memcache-3.0.8
Updating database digests format: 100%
Checking integrity... done (0 conflicting)
Deinstallation has been requested for the following 1 packages (of 0 packages in the universe):

Installed packages to be REMOVED:
        pecl-memcache-3.0.8

The operation will free 136 kB.
[1/1] Deleting pecl-memcache-3.0.8: 100%
root@web5:/usr/ports/databases/pecl-memcache# make install clean
===>  Installing for pecl-memcache-3.0.8
===>   pecl-memcache-3.0.8 depends on file: /usr/local/include/php/main/php.h - found
===>   pecl-memcache-3.0.8 depends on file: /usr/local/lib/php/20100525/zlib.so - found
===>   pecl-memcache-3.0.8 depends on file: /usr/local/lib/php/20100525/session.so - found
===>  Checking if pecl-memcache already installed
===>   Registering installation for pecl-memcache-3.0.8
===>  Cleaning for pecl-memcache-3.0.8
root@web5:/usr/ports/databases/pecl-memcache#

А теперь проверочка!

root@web5:/usr/ports/databases/pecl-memcache# php -v
PHP 5.4.35 (cli) (built: Nov 22 2014 21:51:24)
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.4.0, Copyright (c) 1998-2014 Zend Technologies
root@web5:/usr/ports/databases/pecl-memcache#

Проблема решена!

Хай щастить!

    • skeletor
    • Декабрь 17th, 2014 9:43дп

    Проще сделать
    # make reinstall clean
    Оно сделает то же самое, но одной командой.

    • admin
    • Декабрь 17th, 2014 10:15дп

    @skeletor
    пробовал делать
    # make reinstall
    не помогло …. тогда и решил полностью деинсталить и установить заново, возможно какраз clean и нехватало. Спасибо за подсказку, в следующий раз попробую именно
    # make reinstall clean

  1. Трэкбэков пока нет.

Why ask?