J'ai été chargé de lancer un site que quelqu'un d'autre a construit. Il s'agit d'un site de boutique Wordpress qui a besoin de Memcached pour fonctionner, et j'ai eu du mal à faire fonctionner Memcached et le plugin memcache php sur mon serveur local. Avant d'installer memcached et le plugin PHP memcache, j'obtiendrais cette erreur :
Erreur fatale : Classe 'Memcache' introuvable dans [Chemin]wp-content/object-cache.php à la ligne 350
Maintenant que j'ai memcached et le plugin PHP memcache installés (via Homebrew), j'obtiens une page "Aucune donnée reçue", et j'ai cette erreur dans mon journal d'erreurs Apache :
dyld: lieraison tardive des symboles échouée : Symbole introuvable : _mmc_queue_pop
Référencé depuis : /usr/lib/php/extensions/no-debug-non-zts-20090626/memcache.so
Attendu dans : espace de noms plat
dyld: Symbole introuvable : _mmc_queue_pop
Référencé depuis : /usr/lib/php/extensions/no-debug-non-zts-20090626/memcache.so
Attendu dans : espace de noms plat
[Sam 05 mai 16:38:27 2012] [notice] enfant pid 26491 signal de sortie Trace/BPT trap (5)
J'ai essayé de chercher ce pid dans le Moniteur d'activité en vain, et il change à chaque fois que j'essaie de charger la page. De plus, je ne trouve rien sur _mmc_queue_pop nulle part.
Je suis sous Mac OSX Lion, PHP ver 5.3.8, Memcached ver 1.4.13 et Memcache PHP plugin ver 3.0.6.
Est-ce que quelqu'un sait comment je peux résoudre ce problème ?
Merci !
1 votes
Reconstruisez memcached avec
-fgnu89-inline
dansCFLAGS
/CXXFLAGS
. Ce qui se passe, c'est que le mot-cléinline
sous les nouvelles règles fait en sorte que_mmc_queue_pop
s'incruste dans toutes les instances, ne laissant rien àmemcache.so
pour se lier dynamiquement.0 votes
Comment pourrais-je modifier les CFLAGS/CXXFLAGS pour Homebrew ? Aurais-je besoin de modifier quelque chose dans le fichier Ruby Forumla ?