Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Install Xdebug for PHP 5.6 on OSX with Homebrew

The homebrew/php tap was recently deprecated. This deprecation included versioned formulae for php installations (e.g., php56) as well as installation of individual extensions (e.g., php56-xdebug).

Installing PHP 5.6 with Homebrew now requires the command: brew install [email protected].

Installing PHP 5.6 and then running phpinfo() indicates that Xdebug is not loaded in the list of extensions, and a debugger extension is not found. A selective copy of the output is as follows:

$ /usr/local/Cellar/php\@5.6/5.6.35/bin/php -r "phpinfo();"

PHP Version => 5.6.35

System => Darwin [my hostname] 17.4.0 Darwin Kernel Version 17.4.0: Sun Dec 17 09:19:54 PST 2017; root:xnu-4570.41.2~1/RELEASE_X86_64 x86_64
Build Date => Mar 31 2018 20:19:57
Configure Command =>  './configure'  '--prefix=/usr/local/Cellar/[email protected]/5.6.35' '--localstatedir=/usr/local/var' '--sysconfdir=/usr/local/etc/php/5.6' '--with-config-file-path=/usr/local/etc/php/5.6' '--with-config-file-scan-dir=/usr/local/etc/php/5.6/conf.d' '--enable-bcmath' '--enable-calendar' '--enable-dba' '--enable-exif' '--enable-ftp' '--enable-fpm' '--enable-intl' '--enable-mbregex' '--enable-mbstring' '--enable-mysqlnd' '--enable-opcache-file' '--enable-pcntl' '--enable-phpdbg' '--enable-phpdbg-webhelper' '--enable-shmop' '--enable-soap' '--enable-sockets' '--enable-sysvmsg' '--enable-sysvsem' '--enable-sysvshm' '--enable-wddx' '--enable-zip' '--with-apxs2=/usr/local/opt/httpd/bin/apxs' '--with-bz2' '--with-fpm-user=_www' '--with-fpm-group=_www' '--with-freetype-dir=/usr/local/opt/freetype' '--with-gd' '--with-gettext=/usr/local/opt/gettext' '--with-gmp=/usr/local/opt/gmp' '--with-icu-dir=/usr/local/opt/icu4c' '--with-jpeg-dir=/usr/local/opt/jpeg' '--with-kerberos' '--with-layout=GNU' '--with-ldap' '--with-ldap-sasl' '--with-libedit' '--with-libzip' '--with-mhash' '--with-mysql-sock=/tmp/mysql.sock' '--with-mysqli=mysqlnd' '--with-mysql=mysqlnd' '--with-mcrypt=/usr/local/opt/mcrypt' '--with-ndbm' '--with-openssl=/usr/local/opt/openssl' '--with-pdo-dblib=/usr/local/opt/freetds' '--with-pdo-mysql=mysqlnd' '--with-pdo-odbc=unixODBC,/usr/local/opt/unixodbc' '--with-pdo-pgsql=/usr/local/opt/libpq' '--with-pgsql=/usr/local/opt/libpq' '--with-pic' '--with-png-dir=/usr/local/opt/libpng' '--with-pspell=/usr/local/opt/aspell' '--with-unixODBC=/usr/local/opt/unixodbc' '--with-webp-dir=/usr/local/opt/webp' '--with-xmlrpc' '--with-xsl' '--with-zlib' '--with-curl' 'CC=clang' 'CPPFLAGS=-DU_USING_ICU_NAMESPACE=1' 'CXX=clang++'

Server API => Command Line Interface
Virtual Directory Support => disabled
Configuration File (php.ini) Path => /usr/local/etc/php/5.6
Loaded Configuration File => /usr/local/etc/php/5.6/php.ini
Scan this dir for additional .ini files => /usr/local/etc/php/5.6/conf.d
Additional .ini files parsed => /usr/local/etc/php/5.6/conf.d/ext-opcache.ini

...
...

Running brew options php and brew options [email protected] yield no information on options to install additional extensions in the homebrew installation process. brew search xdebug yields no packages of interest.

As far as I can tell, Xdebug is not installed by default, and there is currently no mechanism to install Xdebug using homebrew with this new generic php formula.

Does anybody know how to go about installing Xdebug in a sensible way now that the original homebrew/php tap has been deprecated?

like image 805
Vector Avatar asked Apr 03 '18 05:04

Vector


People also ask

How do I install an older version of Xdebug?

If you use pecl .. then you can use pecl install xdebug-2.9. 3 . For your apt-get you may try sudo apt-get install <package name>=<version> syntax, for example: sudo apt-get install xdebug=2.9.

Where do I put Xdebug DLL?

On Windows, you should place the php_xdebug.dll in the ext/ directory, which is a child directory in your PHP installation tree.

How do I know if Xdebug is enabled?

Verify that Xdebug is properly running by checking again with phpinfo() or php -v as explained above. Note that 9003 is the default port. If this port is used by another service on your system, change it to an unused port. After adding these settings, restart your webserver again.


2 Answers

According to this answer, you can install it with pecl install xdebug. However, newer versions of xdebug have dropped support for PHP 5.6. To install an older version of xdebug with support for php 5.6, use pecl install xdebug-2.5.5

like image 98
Scentle5S Avatar answered Oct 28 '22 10:10

Scentle5S


I've found a solution to use the deprecated homebrew/php to install php56-extensions.

Install PHP Extension for PHP 5.6 on OSX with deprecated homebrew/php

I hope I've helped you

like image 32
Giampaolo Avatar answered Oct 28 '22 12:10

Giampaolo