Zend Server CE a Xdebug

O práci s Zend Serverem jsem už tu psal. Normálně je nainstalovaný Zend Debugger, který má tu nevýhodu, že neumí spolupracovat s PHPUnit. Proto, když píšu testy a mám v Hudsonu automatické zpracování reportů potřebuji Xdebug. Teď si ukážeme jak to na Ubuntu přidat do Zend Serveru podporu pro Xdebug. Pro windows by to mělo fungovat obdobně jen se vyhnete kompilaci Xdebugu ze zdrojového kódu a máte si možnost stáhnout zkompilovanou knihovnu.

Nechápu moc Zend proč se trochu nesnaží, aby se dal Zend Debugger používat stejným způsobem jako Xdebug. Obzvláště když vím, že v Zend Studiu je code coverage a profiling dostupný.

Teď už jak na to v Ubuntu:

  1. Zend Server CE nainstalovaný dle postupu
  2. Musíte mít nainstalovaný balíček pro kompilaci
    sudo apt-get install build-essential
    sudo apt-get install autoconf
  3. Stáhnout zdrojové kódy xdebugu, rozbalit a dat kompilovat.
    wget http://www.xdebug.org/files/xdebug-2.0.4.tgz
    tar -xzf xdebug-2.0.4.tgz
    cd xdebug-2.0.4/
    /usr/local/zend/bin/phpize
    ./configure --enable-xdebug --with-php-config=/usr/local/zend/bin/php-config
    make
  4. Knihovnu najdete v xdebug-2.0.4/modules/xdebug.so
  5. Knihovnu nakopirujte do /usr/local/zend/lib/debugger/xdebug.so
  6. sudo cp modules/xdebug.so /usr/local/zend/lib/debugger/xdebug.so
  7. Upravte soubor /usr/local/zend/etc/ext.d/debugger.ini a zakomentujte řádek
    ;zend_extension_manager.dir.debugger=/usr/local/zend/lib/debugger
  8. Přidejte nakonec do /usr/local/zend/etc/php.ini řádek
    zend_extension=/usr/local/zend/lib/debugger/xdebug.so
  9. Nezapomeňte restartovat server sudo /etc/init.d/zend-server restart

Po instalaci by jste neměli mít problém spustit Ant s kompletním phpunit taskem i na Zend Serveru CE.