Как установить расширение php-redis на Mac OS 10.13?

Уже несколько дней пытаюсь установить расширение php-redis.

Попробуйте использовать Brew и получить это...

$ brew install php71-redis
Error: No available formula with the name "php71-redis" 
==> 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...
Error: No similarly named formulae found.
==> Searching taps...
==> Searching taps on GitHub...
Error: No formulae found in taps.

Попытка установить с PECL и получить это...

    $ sudo pecl install redis
    downloading redis-4.1.0.tgz ...
    Starting to download redis-4.1.0.tgz (220,774 bytes)
    ..............................................done: 220,774 bytes
    25 source files, building
    running: phpize
    Configuring for:
    PHP Api Version:         20160303
    Zend Module Api No:      20160303
    Zend Extension Api No:   320160303
   ************

   ************
    checking whether to enable igbinary serializer support... yes
    checking whether to enable lzf compression... yes
    checking use system liblzf... no
    checking for igbinary includes... configure: error: Cannot find igbinary.h
    ERROR: `/private/tmp/pear/install/redis/configure --with-php-config=/usr/bin/php-config --enable-redis-igbinary=нуы --enable-redis-lzf=yes' failed

и наконец пытаюсь установить igbinary.h ....

$ sudo pecl install igbinary
downloading igbinary-2.0.7.tgz ...
Starting to download igbinary-2.0.7.tgz (73,523 bytes)

   ************

   ************


Build process completed successfully
Installing '/usr/include/php/ext/igbinary/igbinary.h'
ERROR: failed to mkdir /usr/include/php/ext/igbinary

1 ответ

Я только что сделал это в Mac OS 10.13 (я все еще использую High Sierra).

С homebrew php7.2 и выше pecl теперь устанавливается по умолчанию вместе с двоичными файлами php.

Чтобы убедиться в этом, введите which pecl.

Шаги по установке

  1. Проверьте свою версию Redis, а затем найдите подходящую версию расширения здесь.

  2. Если вы не знакомы с pecl, введите pecl чтобы увидеть варианты.

  3. Проблема pecl install redis 5.0.2. (или ваша версия). Если вы не уверены, ответьте "нет" на каждый задаваемый вопрос.

  4. Если это удалось, проверьте новый файл, созданный по адресу: /usr/local/lib/php/pecl/20180731/redis.so

  5. При установке будет добавлено extension="redis.so"в начало вашего php ini. Убедитесь, что открыв файл/usr/local/etc/php/7.3/php.ini. (при условии, что вы там на 7.3)

  6. brew services restart php.

  7. php -i | grep Redis

Redis Support => enabled
Redis Version => 5.0.2

Сделал это в сентябре 2019 года, и у меня это работает.

Для этого попробуйте отключить csrutil на OSx (Mac):

  1. Перезагрузите свой Mac
  2. Когда Mac запускается, печатайте Command + R, пока не перейдете в режим восстановления
  3. В режиме восстановления зайдите в утилиты и выберите терминал
  4. в терминальном типе csrutil disable
  5. Перезагрузите ваш Mac и повторите установку Redis с помощью pecl.

Должно сработать.

Другие вопросы по тегам