Ошибка установки PECL после обновления до OSX 10.8

Я только что обновил свою ОС до Mountain Lion, и PECL больше не работает (он находится на тестовом диске, поэтому нет драмы, но я хотел бы, чтобы он работал, чтобы я мог обновить ОС на моем блестящем новом SSD).

я использую родную установку PHP, без macports / homebrew или что-то в этом роде.

Running sudo pecl install uploadprogress (например) выдает следующий вывод терминала:

downloading uploadprogress-1.0.3.1.tgz ...
Starting to download uploadprogress-1.0.3.1.tgz (9,040 bytes)
.....done: 9,040 bytes
4 source files, building
running: phpize
grep: /usr/include/php/main/php.h: No such file or directory
grep: /usr/include/php/Zend/zend_modules.h: No such file or directory
grep: /usr/include/php/Zend/zend_extensions.h: No such file or directory
Configuring for:
PHP Api Version:
Zend Module Api No:
Zend Extension Api No:
autom4te: need GNU m4 1.4 or later: /usr/bin/m4
ERROR: `phpize' failed

Я предполагаю, что проблема в 3 grep линии. Я нашел несколько тем, которые предположим, это вызвано XCode не устанавливается...но XCode is установлено и обновлено до последней версии (4.4). Все символические ссылки на /Developer/usr/bin/* также существуют, как и должны.

m4 в настоящее время версия:m4 (GNU M4) 1.4.13, поэтому, хотя вывод выше содержит строку, относящуюся к нему, я не думаю, что это может быть проблемой.

Я уверен, что это простой вопрос, у кого-нибудь есть ключи?

25
задан Clive
04.03.2023 0:23 Количество просмотров материала 3684
Распечатать страницу

4 ответа

оказалось чем-то до смешного простым.

m4 теперь находится в /usr/local/bin/m4, что-то (может быть autom4te?) искал его в /usr/bin / m4. Быстрая символическая ссылка исправила проблему.

1
отвечен Clive 2023-03-05 08:11

попробуйте выполнить установку следующей командой (измените путь соответствующим образом), например:

M4=/Developer/usr/bin/m4 pecl install uploadprogress
1
отвечен kenorb 2023-03-05 10:28

оказывается, вам может потребоваться согласиться с условиями и положениями XCode для M4. Для этого выполните:

sudo m4 version

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

1
отвечен Fabio Berger 2023-03-05 12:45

это заняло у меня возрастов, но вот как я решил:

  • выполнить:

    which autom4te
    
  • дает вам путь autom4te. В моем случае это было: /Applications/MAMP/Library/bin/autom4te

  • перейти к этому пути и посмотреть, если есть программа m4

  • если это так, он может быть поврежден. Так переименуйте его:

    mv m4 m4_old
    
  • теперь проверьте, где находится Ваша новая версия m4. Так run:

     which m4
    

это дает вам: /path/to/your/m4

  • теперь найдите символическую ссылку в папке autom4te к исходному пути m4, так:

     ln -s /path/to/your/m4
    

теперь должно работать, работает pecl

0
отвечен codiga 2023-03-05 15:02

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх