Archív

Archív pro ‘xdebug’ Kategorie

Xdebug 2.1 instalace ze zdrojových kódů

30.06.2010 View Comments

Včera vyšela nová verze Xdebug 2.1. Z hlavních novinek bych zdůraznil podporu pro PHP 5.3 a další můžete vyčíst z Derickova oznámení.

Xdebug jsem instaloval na Mac OS X 10.6.4 a Ubuntu 9.10 a bez problémů jsem to zkompiloval ze zdrojových kódů.

V Ubuntu i na Macu je potřeba mít podporu pro kompilaci ze zdrojových kódů. V ubuntu je to balíček build-essential a autoconf a na Macovi Xcode s příslušenstvím, případně si přes Port doinstalujete co potřebujete.

  • Stáhnout zdrojové kódy xdebugu, rozbalit a dat kompilovat.
    wget http://www.xdebug.org/files/xdebug-2.1.0.tgz
    tar -xzf xdebug-2.1.0.tgz
    cd xdebug-2.1.0/
    phpize
    ./configure --enable-xdebug
    make
  • Knihovnu najdete v xdebug-2.1.0/modules/xdebug.so
  • Knihovnu nakopirujte k ostatním knihovnám, případně kam chcete
  • Přidejte nakonec do php.ini řádek
    zend_extension=/cesta-k-modulum/xdebug.so
  • Nezapomeňte restartovat server

Pokud máte nějaké potíže s kompilací nebo s Xdebugem, klidně se ozvěte ve komentářích.

P.S.: Pokud instalujete xdebug poprvé nezapomeňte zkontrolovat zda máte správně konfiguraci pro debugging pro IDE (např. NetBeans)

xdebug.remote_enable=1
xdebug.remote_host=localhost
xdebug.remote_port=9000
xdebug.remote_handler=dbgp
xdebug.profiler_enable=1
xdebug.profiler_output_dir="/tmp/xdebug"
Categories: php, xdebug Tags:

Zend Server CE a Xdebug

18.05.2009 View Comments

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.

<target name="php-unit">
<exec executable="phpunit" dir="${ws}" logerror="on">
<arg line="--log-xml '${builddir}/build/logs/phpunit.xml'
--log-pmd '${builddir}/build/logs/phpunit.pmd.xml'
--log-metrics '${builddir}/build/logs/phpunit.metrics.xml'
--coverage-xml '${builddir}/build/coverage/clover.xml'
--coverage-html '${builddir}/build/coverage'
'tests/'"/>
</exec>
</target>
Categories: xdebug Tags: ,

Ubuntu a konfigurace XDebug pro Eclipse PDT 2.0

28.01.2009 View Comments

Jeden ze čtenářů mého blogu mě poprosil o radu, tak jsem si řekl co se hodí jednomu, může pomoci více lidem.

Pokud máte Ubuntu (KUbuntu, Linux Mint) nebo jiného příbuzného ubuntu provedu vás instalací Eclipse s PDT a konfiguraci XDebug.

Instalace

1. Eclipse můžete nainstalovat z repozitory, ale PDT tam není a proto tento postup nedoporučuji. Lepší je stáhnout si verzi PDT 2.0 All In Ones.
2. Samozřejmě předpokládám, že máte nainstalovaný apache2 a php5 z repozitory. Pro xdebug nezapomeňte nainstalovat php5-xdebug balíček.
3. Jako další krok, než začnu konfigurovat Eclipse, vytvořím kopii php.ini pro XDebug, kam se přidá na konec.

[xdebug]
zend_extension=/usr/lib/php5/20060613+lfs/xdebug.so

Konfigurace

4. Pokud je toto připraveno stačí nakonfigurovat XDebug v Eclipse.
5. otevřeme nastavení: Window -> Preferences
6. pod PHP si najdeme PHP Servers a nastavíme si ho na workspace Eclipse. Já osobně mám vytvořený v Apache virtual host, který je pojmenovaný workspace a vede jeho document root na /home/user/workspace/ kde pracuji s Eclipse.

7. v PHP Executables si nastavím cesty k php a k modifikovanému php.ini pro XDebug.

8. V záložce PHP -> Debug potom musíte mít zapnuté nakonfigurované služby, ale dají se přepínat i přes debug konfiguraci.

9. V menu Run -> Debug Configurations je dobré zkontrolovat, zda pro daný soubor odpovídá nastavení, také pokud se při debugu objeví nějaká chyba je dobré se v první řadě podívat sem a zkontrolovat zda se nepouští třeba jiný debugger, který nemáte nastavený apod.

10. Můžete začít debugovat, např. Run -> Debug as -> PHP Script. Na obrázku je vidět debug jednoduchého skriptu v akci.

Závěr

Rozšíření XDebug umí také profiling, pomocí KCacheGrind nebo WinCacheGrind a také analýzu pokrytí kódu. Doufám, že někomu návod pomůže, pokud máte jakékoliv připomínky nebo dotazy k tématu neváhejte se v komentářích vyjádřit.

Categories: pdt, ubuntu, xdebug Tags:

Switch to our mobile site