Ошибка при попытке запустить phan 2.x из-за php-ast

Ошибка при попытке запустить phan 2.x из-за php-ast

Я не могу найти решение для «ОШИБКА: Phan 2.x требует php-ast 1.0.1+, так как он зависит от AST версии 70. Установлен php-ast 0.1.6».

root@desk:/mnt/d/ibr/phan$ ./phan
ERROR: Phan 2.x requires php-ast 1.0.1+ because it depends on AST version 70. php-ast 0.1.6 is installed.
Exiting without analyzing files.

решение1

Версия AST, которая идет в официальном репозитории PHP, слишком стара для работы с phan. У вас есть 2 варианта:

  1. Запустите phan с помощью --allow-polyfill-parser parameter, что значительно медленнее, но работает без установки расширения.

  2. Установить ast из pecl.

    Для Ubuntu 18.04 мне пришлось сделать:

    sudo apt install php7.2-dev php-pear
    sudo pecl install ast`
    sudo phpenmod ast
    

    Для дистрибутивов, не основанных на Debian, вам необходимо установить phpizeи peclзапустить pecl install astкак root, а затем отредактировать php.ini, чтобы добавитьextension=ast.so

Связанный контент