Xdebug & phpize for PHP on FreeBSD
I ran into a few problems trying to install Xdebug into PHP on both FreeBSD 5.2 and FreeBSD 5.4. My research led me to this PHP bug thread and the proper solution. Here’s a quick summary to get you going with Xdebug:
Xdebug is installed via phpize, and phpize has some requirements:
- autoconf: 2.13
- automake: 1.4+
- libtool: 1.4.x+ (except 1.4.2)
- bison: 1.28 (preferred), 1.35, or 1.75
- flex: 2.5.4
I was able to get mine up and running with the following versions:
- autoconf: 2.59_2
- automake: 1.9.5
- libtool: 1.5.10_1
- bison: 1.75_2
- flex: 2.5.4
However, the ports packages for autoconf, automake, and libtool that come with FreeBSD are installed into non-standard locations, so phpize is unable to find them. This is easily fixed with symlinks (NOTE: symlinks will vary depending on which versions you have installed):
ln -s /usr/local/bin/aclocal19 /usr/local/bin/aclocal
ln -s /usr/local/bin/automake19 /usr/local/bin/automake
ln -s /usr/local/bin/autoconf259 /usr/local/bin/autoconf
ln -s /usr/local/bin/autoheader259 /usr/local/bin/autoheader
ln -s /usr/local/bin/libtool15 /usr/local/bin/libtool
ln -s /usr/local/bin/libtoolize15 /usr/local/bin/libtoolize
ln -s /usr/local/share/aclocal19/ /usr/local/share/aclocal
ln -s /usr/local/share/aclocal19/libtool15.m4 /usr/local/share/aclocal19/libtool.m4
Now, assuming you have all the correct versions installed and paths present, phpize should be able to find everything and Xdebug should install as expected:
# phpize
# ./configure --enable-xdebug
# make
# cp modules/xdebug.so /usr/local/lib/php/extensions
- Add the following to php.ini:
zend_extension="/usr/local/lib/php/extensions/xdebug.so"
- Restart your webserver
- Check the output of phpinfo() to make sure Xdebug is properly loaded