Como instalar o PHP 7.2 com xdebug no MacOS

Hoje deixo-vos aqui as instruções, de como instalarem a versão de PHP 7.2 com o xdebug.

Como sabem o MacOs é um sistemas operativos mais estáveis, contudo sofre de alguns males, nomeadamente actualizações específicas de certas aplicações, como por exemplo o PHP.

Para isso, existe um gestor de pacotes, mantido pela comunidade, que poderá ser instalado, chamado de brew.

Vamos então começar por instalar o brew, para isso será necessário correr o seguinte comando:

$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Quando terminar, é necessário adicionar os pacotes relativos ao PHP:

$ brew tap homebrew/php

e por fim, para instalar a versão 7.2 do PHP e do xdebug, terá de correr as seguintes linhas:

$ brew install php72 php72-xdebug

e vão receber a seguinte mensagem

Error: No available formula with the name "php72-xdebug"
==> Searching for a previously deleted formula (in the last month)...
Warning: homebrew/core is shallow clone. To get complete history run:
git -C "$(brew --repo homebrew/core)" fetch --unshallow

Error: No previously deleted formula found.
==> Searching for similarly named formulae...
==> Searching local taps...
Error: No similarly named formulae found.
==> Searching taps...
==> Searching taps on GitHub...
Error: No formulae found in taps.

Neste momento devem-se estar a questionar o que se passou, mas a realidade é que desde a versão 7.1 do PHP o xdebug custa um bocadinho mais a instalar. Para isso necessitamos agora de instalar o PECL (PHP Extension Community Library).

$ curl -O http://pear.php.net/go-pear.phar
$ sudo php -d detect_unicode=0 go-pear.phar

Na configuração comecem por escolher 1 e carreguem na tecla Enter. Insiram

/usr/local/pear

Carreguem uma vez mais em enter e quando voltar a perguntar, escolha 4 e Enter. Por fim, insiram

/usr/local/bin

e enter.

Neste momento já temos o PHP 7.2 e o PECL instalados, só nos falta o Xdebug. Para isso, vamos executar os seguintes comandos:

$ sudo pecl update-channels 
$ sudo pecl list-all
$ sudo pecl install xdebug

Quando a instalação terminar, deverá aparecer o seguinte

Build process completed successfully

Installing '/usr/local/Cellar/php/7.2.7/pecl/20170718/xdebug.so'

install ok: channel://pecl.php.net/xdebug-2.6.0

Extension xdebug enabled in php.ini

por fim, para validarem que têm a versão correcta, corram

$ php -v

Caso vos apareça o seguinte erro

PHP Warning:  Failed loading Zend extension 'xdebug.so' (tried: /usr/local/Cellar/php/7.2.7/lib/php/20170718/xdebug.so (dlopen(/usr/local/Cellar/php/7.2.7/lib/php/20170718/xdebug.so, 9): image not found), /usr/local/Cellar/php/7.2.7/lib/php/20170718/xdebug.so.so (dlopen(/usr/local/Cellar/php/7.2.7/lib/php/20170718/xdebug.so.so, 9): image not found)) in Unknown on line 0

Warning: Failed loading Zend extension 'xdebug.so' (tried: /usr/local/Cellar/php/7.2.7/lib/php/20170718/xdebug.so (dlopen(/usr/local/Cellar/php/7.2.7/lib/php/20170718/xdebug.so, 9): image not found), /usr/local/Cellar/php/7.2.7/lib/php/20170718/xdebug.so.so (dlopen(/usr/local/Cellar/php/7.2.7/lib/php/20170718/xdebug.so.so, 9): image not found)) in Unknown on line 0

Failed loading /usr/local/php/modules/xdebug.so:  dlopen(/usr/local/php/modules/xdebug.so, 9): image not found

PHP 7.2.7 (cli) (built: Jun 22 2018 06:27:50) ( NTS )

Copyright (c) 1997-2018 The PHP Group

Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies

    with Zend OPcache v7.2.7, Copyright (c) 1999-2018, by Zend Technologies

Terão de editar o ficheiro /usr/local/etc/php/7.2/php.ini e onde está 

zend_extension="..."

substituam por

zend_extension="/usr/local/Cellar/php/7.2.7/pecl/20170718/xdebug.so"

corram agora

php -v

Neste momento deverão ter a seguinte mensagem

PHP 7.2.7 (cli) (built: Jun 22 2018 06:27:50) ( NTS )

Copyright (c) 1997-2018 The PHP Group

Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies

    with Xdebug v2.6.0, Copyright (c) 2002-2018, by Derick Rethans

    with Zend OPcache v7.2.7, Copyright (c) 1999-2018, by Zend Technologies

Se por algum motivo, tiverem dúvidas ou acontecer algum erro num dos comandos acima, não hesitem a deixar um comentário.

The King is Dead, Long live the King… 2

Este ano faz 10 anos que este blog foi criado e podem não acreditar, mas à quase 6 fiz uma migração de WordPress para eZ Publish. Como se sabe nada é definitivo, então em informática muito menos.

Visto isto, vou tentar re-activar o blog que nos últimos anos esteve um pouco abandonado. Como tal a primeira coisa que fiz, foi voltar a migrar para o WordPress. Podem perguntar o que se passou, mas a realidade é que o WordPress é um dos melhores, se não mesmo o melhor sistema de gestão de blogs e como isto é um blog…

Doom 4

Mais uma vez a Id software, anuncia o inicio da produção de mais um título que muito provavelmente irá mais uma vez abanar a industria dos jogos. Desde a saída do primeiro Doom, que já foi à 15 anos, a Id software ficou conhecida pela sua excelência no mercado dos jogos. Esperemos que este título em desenvolvimento faz jus aos seus precedentes.

VirtualBox

Nos dias que correm é cada vez mais útil recorrer a software de máquina virtual, pela mais variadas razões como por exemplo:

  • Instalar programas sem afectar a estabilidade do sistema operativo;
  • Aceder livremente à net sem qualquer preocupação em termos de adware e sypware;
  • Ou por simplesmente testar outro sistema operativo sem ter de criar uma partição.

Mas a maior parte do software (decente) é pago, como por exemplo o Vmware, por outro lado temos o Microsoft Virtual PC que funciona muito bem com sistemas operativos da Microsoft e pouco mais… Para quem não está disposto a pagar por software, como eu pode recorrer ao VirtualBox.

O Virtualbox funciona tão bem ou melhor do que o Vmware, tem a grande vantagem de ser de borla e existem versões para a maior parte dos sistemas operativos.