Date: Thu, 13 Oct 2016 10:38:37 +0200 From: Niklaas Baudet von Gersdorff <stdin@niklaas.eu> To: freebsd-questions@freebsd.org Subject: Re: Unable to load dynamic library memcached.so Message-ID: <20161013083837.e26egzseoohj3se6@box-hlm-03.niklaas.eu> In-Reply-To: <80df56c7-23e6-41da-06b6-5dca05e6f282@blackboxconsortium.com> References: <20161012212705.sm7lvgs2jkn5zv3c@box-hlm-03.niklaas.eu> <80df56c7-23e6-41da-06b6-5dca05e6f282@blackboxconsortium.com>
next in thread | previous in thread | raw e-mail | index | archive | help
Orion Tiller [2016-10-12 16:59 -0700] : > Not sure if this will help you here but I sometimes have an issue with > redis where if the line extension=session.so isn't loaded first before > the redis one in /usr/local/etc/php/extensions.ini I get a similar error > to the one you are seeing. The pecl-memcached port also lists these as > requirements php56-json-5.6.26, php56-session-5.6.26 This helped a lot. I think I'm on the track to solve this. I had the following folder structure: $ ls -l /usr/local/etc/php/ total 28 -rw-r--r-- 1 root wheel 18 Oct 4 05:16 ext-20-curl.ini -rw-r--r-- 1 root wheel 16 Oct 4 04:52 ext-20-gd.ini -rw-r--r-- 1 root wheel 18 Oct 4 06:37 ext-20-intl.ini -rw-r--r-- 1 root wheel 21 Oct 4 04:58 ext-20-sqlite3.ini -rw-r--r-- 1 root wheel 23 Oct 12 20:55 ext-30-memcached.ini -rw-r--r-- 1 root wheel 24 Oct 4 15:07 ext-30-pdo_sqlite.ini -rw-r--r-- 1 root wheel 505 Oct 12 21:54 extensions.ini I assumed that ext-* are loaded before extensions.ini. $ grep -e json -e session /usr/local/etc/php/extensions.ini extension=json.so extension=session.so Following json.so and session.so are loaded *after* memcached.so which causes the error. So, I created a symlink that loads the required *.so's first: $ ls -l /usr/local/etc/php/ total 28 ! lrwxr-xr-x 1 root wheel 14 Oct 13 10:20 ext-00-extensions.ini -> extensions.ini -rw-r--r-- 1 root wheel 18 Oct 4 05:16 ext-20-curl.ini -rw-r--r-- 1 root wheel 16 Oct 4 04:52 ext-20-gd.ini -rw-r--r-- 1 root wheel 18 Oct 4 06:37 ext-20-intl.ini -rw-r--r-- 1 root wheel 21 Oct 4 04:58 ext-20-sqlite3.ini -rw-r--r-- 1 root wheel 23 Oct 12 20:55 ext-30-memcached.ini -rw-r--r-- 1 root wheel 24 Oct 4 15:07 ext-30-pdo_sqlite.ini -rw-r--r-- 1 root wheel 505 Oct 12 21:54 extensions.ini Although now I get quite a lot of notices that extensions had already been loaded, memcached loads without problems. I suspect, this issue stems from the fact that I installed lang/php56-extensions plus additional extensions individually, such as curl, gd, intl, sqlite3, pdo-sqlite, and memcached. To get rid of the notices the following two options should work. 1. renaming (instead of symlinking) extensions.ini to ext-00-extensions.ini 2. deleting lang/php56-extensions and installing the required ports individually Niklaas
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20161013083837.e26egzseoohj3se6>