Xdebug kann nicht mit PHP 5.4 verknüpft werden

4510
Eugene

Heute habe ich installiert / meine vorherigen aktualisiert php 5.3.xzu 5.4.11 . Hat es dementsprechend wie ein Upgrade von PHP 5.3 auf PHP 5.4.6 in Ubuntu durchgeführt?

Die Installation war erfolgreich, aber es schien mir, dass sie xdebugaufgrund einer Warnmeldung veraltet war php -v, um den Erfolg der Installation zu überprüfen.

Also habe ich pear/pecldie vorherige Installation von xdebug aktualisiert und entfernt
sudo pecl uninstall xdebug

php_iniStellen Sie die Einstellung ein pear/peclund versuchen Sie es erneut sudo pecl install xdebug. Als die Installation aus irgendeinem Grund beendet wurde, zeigte es mir, dass dies php_ininicht auf php.ini(wenn es tatsächlich war) hinweist .

Trotzdem war die Installation erfolgreich, mit der Ausnahme, dass, als ich versuchte, /usr/lib/php5/20090626+lfs/xdebug.soeine Datei in /etc/php5/mods-availableund einen Symlink zu dieser Datei hinzuzufügen /etc/php5/conf.d, nachdem ich den Server neu gestartet hattephp -v

sandbox@ubuntu:~$ php -v PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php5/20090626+lfs/xdebug.so' - /usr/lib/php5/20090626+lfs/xdebug.so: undefined symbol: php_body_write in Unknown on line 0 PHP 5.4.11-1~precise+1 (cli) (built: Jan 24 2013 15:22:16) Copyright (c) 1997-2013 The PHP Group Zend Engine v2.4.0, Copyright (c) 1998-2013 Zend Technologies 

Weiß jemand, wie man es reparieren kann? Ich brauche wirklich Xdebug auf meiner Seite)

UPDATE: Ich habe vergessen zu erwähnen, dass auf Ubuntu Server 12.04, das sich auf der VirtualBox unter dem Windows-Hostsystem befindet, alles passiert.

UPDATE 1: Ich habe vorgeschlagen, das 20090626+lfsVerzeichnis an einen anderen Ort zu verschieben, da es die neuere Version spiegeln könnte, aber nein. Nachdem ich es weggeschoben hatte, versuchte ich, xdebug ( sudo pecl uninstall xdebug & sudo pecl install xdebug) neu zu installieren, wurde aber aus irgendeinem Grund an derselben Stelle installiert. Beim Betrachten von peclconfig sehe ich

PHP extension directory ext_dir /usr/lib/php5/20100525+lfs 

, aber während der Installation von xdebug wird folgendes ausgegeben

checking for PHP extension directory... /usr/lib/php5/20090626+lfs 
2

3 Antworten auf die Frage

2
steven

In meinem Fall php5-devwar bereits installiert und ich habe auch die unable to load...Nachricht erhalten. Die Deinstallation von xdebug hat den Trick für mich gemacht:

sudo pecl uninstall xdebug 

und dann

sudo pecl install xdebug 

Das Installationsverzeichnis hat sich jetzt geändert und ich musste meine /etc/php5/mods-available/xdebug.iniVersion ändern, um auf das neue xdebug.so zu zeigen

1
Eugene

php5-dev muss installiert werden.

sudo apt-get install php5-dev 
0
ferreirabraga

Fügen Sie die folgenden Zeilen in die Datei php.ini ein.

[xdebug]
zend_extension = xdebug.so

Bearbeiten Sie die Datei /etc/php5/cli/conf.d/xdebug.ini

xdebug.remote_enable = 1
xdebug.remote_handler = dbgp
xdebug.remote_mode = req
xdebug.remote_host = 127.0.0.1
xdebug.remote_port = 9000

In der folgenden URL http://icdif.com/computing/2011/05/01/xdebug-ubuntu/ erhalten Sie die einfache Anleitung zum Einrichten des xdebug. Vergessen Sie jedoch nicht, den Befehl auszuführen:

sudo pecl install xdebug (dieses Kommando

Starten Sie den Apache neu

sudo /etc/init.d/apache2 neu starten

und perfert!

Funktioniert wie ein Charme