Подтвердить что ты не робот

Не удается установить xdebug на Mac с помощью Homebrew

Я как бы новичок в использовании Homebrew, но мне это нравится. Это так просто. Я пытаюсь установить Xdebug. Некоторые из сообщений в Интернете говорят, чтобы сделать это:

brew install xdebug

Но это не сработает. Я получаю: Error, no available formula.

Я сделал brew search xdebug, и он вернулся:

josegonzalez/php/php53-xdebug    josegonzalez/php/php54-xdebug

Я пробовал несколько разных итераций brew install с этим, включая brew install php53-xdebug, но все равно не повезло. Кто-нибудь может мне помочь? Я не могу найти что-либо на сайте Xdebug об использовании Homebrew, но все же сообщения в Интернете, похоже, указывают на это.

4b9b3361

Ответ 1

Добавьте этот репозиторий: https://github.com/josegonzalez/homebrew-php#readme

Затем используйте brew install php54-xdebug для PHP 5.4

Или brew install php53-xdebug для PHP 5.3

Или brew install php55-xdebug для PHP 5.5

Ответ 2

// Работаем с 2019 года

Поскольку homebrew удалил дополнительный репозиторий php, содержащий версию с уже установленной xdebug, вы должны установить ее вручную.

Резюме:

  1. brew install для php
  2. обнови свой путь
  3. pecl install для xdebug

Полный пример:

# update homebrew
brew update

# install a version of php, e.g. 7.0
brew install [email protected]

# now they tell you how to link it, in my case
echo 'export PATH="/usr/local/opt/[email protected]/bin:$PATH"' >> ~/.bash_profile
echo 'export PATH="/usr/local/opt/[email protected]/sbin:$PATH"' >> ~/.bash_profile

# reload the file with the updated path, so we can use pecl
source ~/.bash_profile

# check that the path is to the correct php executable,
# and pecl is available
which pecl
# returns: /usr/local/opt/[email protected]/bin/pecl

# install xdebug, see https://xdebug.org/docs/install#pecl
pecl install xdebug

# check that everything worked
php --version
# should show a xdebug version
# like:  with Xdebug v2.6.0, Copyright (c) 2002-2018, by Derick Rethans

pecl install xdebug завершился с

Build process completed successfully
Installing '/usr/local/Cellar/[email protected]/7.0.30/pecl/20151012/xdebug.so'
install ok: channel://pecl.php.net/xdebug-2.6.0
Extension xdebug enabled in php.ini

Поэтому мне даже не нужно было включать xdebug.so в php.ini.

Ответ 3

Забудьте о homebrew на мгновение. Я пробовал делать с ним, и это не такая хорошая идея, как стабильность. Вместо этого используйте руководство по установке по умолчанию:

Установка XDebug на Mac OSX

  • Перейдите в http://xdebug.org/wizard.php и вставьте свой контент phpinfo(). есть.
  • Загрузить xdebug-2.2.5.tgz(http://xdebug.org/files/xdebug-2.2.5.tgz)
  • Распакуйте загруженный файл с помощью

    tar -xvzf xdebug-2.2.5.tgz

  • Запуск:

    cd xdebug-2.2.5

  • Запустите phpize (установите его через homebrew, если у вас его еще нет)

    phpize

  • Как часть своего вывода, он должен показать (если это не так, вы используете неправильный phpize):

    Настройка для:...
    Zend Module Api No: 20100525
    Расширение Zend Api No: 220100525

  • Запуск:

    ./configure

  • Запуск:

    make

  • Запуск:

    cp modules/xdebug.so /usr/lib/php/extensions/no-debug-non-zts-20100525

  • Измените/etc/php.ini и добавьте строку:

    zend_extension =      /usr/lib/php/extensions/no -debug-non-zts-20100525/xdebug.so

  • Перезагрузите веб-сервер, введя терминал:

    sudo apachectl restart

Ответ 4

Обновлено: 09-10-2019

Для PHP 5.6 & 7.0 (больше не в варочном сердечнике)

brew tap exolnet/homebrew-deprecated

Использовать пакет brew в комплекте (если php установлен вместе с brew)

Пример PHP 5.6

brew install [email protected]
$(brew --prefix [email protected])/bin/pecl install --force xdebug-2.5.5

Пример PHP 7.0

brew install [email protected]
$(brew --prefix [email protected])/bin/pecl install --force xdebug

Пример PHP 7.1

brew install [email protected]
$(brew --prefix [email protected])/bin/pecl install --force xdebug

Пример PHP 7.2

brew install [email protected]
$(brew --prefix [email protected])/bin/pecl install --force xdebug

Пример PHP 7.3

brew install [email protected]
$(brew --prefix [email protected])/bin/pecl install --force xdebug

или сначала свяжись с варевом

Пример PHP 5.6

brew install [email protected]
brew link --force [email protected]
pecl install --force xdebug-2.5.5
brew unlink [email protected]

Пример PHP 7.0

brew link --force [email protected]
pecl install --force xdebug
brew unlink [email protected]

Пример PHP 7.1

brew link --force [email protected]
pecl install --force xdebug
brew unlink [email protected]

Пример PHP 7.2

brew link --force [email protected]
pecl install --force xdebug
brew unlink [email protected]

Пример PHP 7.3

brew link --force [email protected]
pecl install --force xdebug
brew unlink [email protected]

Если php -v выдает ошибку, в которой говорится, что xdebug.so не может быть найден (при условии, что установка pecl прошла успешно), у вас могут быть "старые" настройки, такие как php.ini Un-, а переустановка php с помощью brew - нет. удалить INI файлы. Обновление php до нового формата не обновляет ini файлы. Просто переустановите php с помощью brew после удаления папки /usr/local/etc/php/5.6/, и xdebug должен работать.

Новая установка brew php не связывает. Вы можете сделать это самостоятельно, если хотите (brew link --force [email protected]). Также вы можете установить brew-php-switcher для переключения между версиями.

brew install brew-php-switcher
brew-php-switcher 5.6 -s
php -v
brew-php-switcher 7.0 -s
php -v

Имейте в виду, что если вы загрузили php как сервис, вам нужно перезапустить сервис.

brew services restart [email protected]

Ответ 5

Я нашел эту страницу в то время как googling, как установить для php 7.1 на , и я решил оставить здесь свое решение:

brew install homebrew/php/php71-xdebug

Возможно, это будет полезно для кого-то еще в будущем...

Ответ 6

Это мое решение! Попытайся! ;)

1 Установите инструменты разработчика:

xcode-select --install

2 Instal Autoconf. Это инструмент для создания сценариев оболочки, которые автоматически настраивают программное обеспечение

brew install autoconf

3 Если вы используете PHP> 5.6

sudo pecl install xdebug

Повеселись ;)

Ответ 7

Похоже, что репо переместилось, но доступно здесь, в комплекте о том, как получить доступ к нему из Homebrew.

Ответ 8

Это помогло мне решить версию Zend, а для xdebug Xdebug требуется версия Zend Engine API 320160303. Установленная версия Zend Engine API 320180731 является более новой.

https://xdebug.org/wizard.php

Ответ 9

Каталина

Начиная с Catalina (Mac OS 10.15) PHP, кажется, предустановлен (проверьте с помощью php -v) Он мог быть установлен вместе с xcode или другим программным обеспечением (я не уверен) Но я только что установил Catalina вчера и не установил Homebrew Тем не менее, также доступен xdebug. Мне просто нужно было переименовать /etc/php.ini.default и добавить эту строку

zend_extension = /usr/lib/php/extensions/no-debug-non-zts-20180731/xdebug.so

Ответ 10

Если вы получили эту ошибку после добавления крана и установки:

$ brew install "josegonzalez/php/php55"
==> Installing php55 from josegonzalez/php
Error: Formulae found in multiple taps: 
 * homebrew/php/php53
 * josegonzalez/php/php53

Please use the fully-qualified name e.g. homebrew/php/php53 to refer the formula.

это связано с тем, что josegonzalez/php был перенесен на homebrew-php/php, поэтому вы столкнулись с предыдущей ошибкой.

Идея довольно проста, удалите старый устаревший репо josegonzalez/php

brew untap josegonzalez/php
brew tap --repair
brew update

Смотрите источник этого решения, чтобы исправить любые другие связанные с этим ошибки.