Возникли проблемы при попытке установить OAUTH с PECL в MAMP на Mac OS lion

Я новичок в настройке php-серверов, и я пошел, несмотря на другие связанные сообщения, похоже, что у меня нет такой же ошибки, как у меня. Я использую MAMP 2.0.2 и запускаю PHP 5.3.6, и я пытался установить oAuth на свой локальный MAMP, используя следующие команды:

$ cd /Applications/MAMP/bin/php/php5.3.6/bin $ ./pecl install oauth 

однако он возвращает такую ​​ошибку:

 Notice: unserialize(): Error at offset 276 of 1133 bytes in Config.php on line 1050 ERROR: The default config file is not a valid config file or is corrupted. 

Что происходит? PECL поставляется в MAMP, который должен работать из коробки ….

Обновить:

Я прочитал сообщение в другом месте, предположим, что данные конфигурационного файла, в которых содержатся пути установки, являются правильными, поэтому я изменил некоторое значение в следующем файле:

 /Applications/MAMP/bin/php/php5.3.6/conf/pear.conf 

Затем я использую команду:

 $ ./pecl install oauth 

Что он начинает загружать и распаковывать, но когда он пытается установить, он дает:

 creating libtool appending configuration tag "CXX" to libtool configure: creating ./config.status config.status: creating config.h running: make /bin/sh /private/tmp/pear/temp/pear-build-user1RU5EZA/oauth-1.2.2/libtool --mode=compile cc -I. -I/private/tmp/pear/temp/oauth -DPHP_ATOM_INC -I/private/tmp/pear/temp/pear-build-user1RU5EZA/oauth-1.2.2/include -I/private/tmp/pear/temp/pear-build-user1RU5EZA/oauth-1.2.2/main -I/private/tmp/pear/temp/oauth -I/Applications/MAMP/bin/php/php5.3.6/include/php -I/Applications/MAMP/bin/php/php5.3.6/include/php/main -I/Applications/MAMP/bin/php/php5.3.6/include/php/TSRM -I/Applications/MAMP/bin/php/php5.3.6/include/php/Zend -I/Applications/MAMP/bin/php/php5.3.6/include/php/ext -I/Applications/MAMP/bin/php/php5.3.6/include/php/ext/date/lib -DHAVE_CONFIG_H -g -O2 -Wall -g -c /private/tmp/pear/temp/oauth/oauth.c -o oauth.lo mkdir .libs cc -I. -I/private/tmp/pear/temp/oauth -DPHP_ATOM_INC -I/private/tmp/pear/temp/pear-build-user1RU5EZA/oauth-1.2.2/include -I/private/tmp/pear/temp/pear-build-user1RU5EZA/oauth-1.2.2/main -I/private/tmp/pear/temp/oauth -I/Applications/MAMP/bin/php/php5.3.6/include/php -I/Applications/MAMP/bin/php/php5.3.6/include/php/main -I/Applications/MAMP/bin/php/php5.3.6/include/php/TSRM -I/Applications/MAMP/bin/php/php5.3.6/include/php/Zend -I/Applications/MAMP/bin/php/php5.3.6/include/php/ext -I/Applications/MAMP/bin/php/php5.3.6/include/php/ext/date/lib -DHAVE_CONFIG_H -g -O2 -Wall -g -c /private/tmp/pear/temp/oauth/oauth.c -fno-common -DPIC -o .libs/oauth.o In file included from /private/tmp/pear/temp/oauth/oauth.c:14: /private/tmp/pear/temp/oauth/php_oauth.h:20:10: fatal error: 'php.h' file not found include "php.h" ^ 1 error generated. make: *** [oauth.lo] Error 1 ERROR: `make' failed 

Опять же, что происходит?

Я знаю, что это старо, но я нашел этот вопрос, имея аналогичную проблему.

MAMP не поставляется с кучей источников PHP

  • Загрузите компоненты MAMP и настройте
  • URL: http://www.mamp.info/en/downloads/index.html (т.е. MAMP_components_2.0.2.zip)
  • Распакуйте свой MAMP_components_2.0.2.zip
  • Определите свой файл php-5.xxtar.gz (где 5.xx – ваша версия PHP)
  • Если вы используете php> 5.4.10, загрузите источники из http://php.net/releases, так как они не находятся в загрузке компонентов MAMP (кредит в комментариях в комментариях)
  • Создайте каталог для ваших источников PHP:

    mkdir -vp /Applications/MAMP/bin/php5/include

  • Untar php-5.xxtar.gz в /Applications/MAMP/bin/php/php5.*/include или / Applications / MAMP / bin / php5 / include:

    tar zxvf php-5.xxtar.gz -C /Applications/MAMP/bin/php/php5.?.??/include

  • Переименуйте каталог php-5.xx в php (без нумерации версий):

    mv /Applications/MAMP/bin/php/php5.2.17/include/php-5.?.?? /Applications/ MAMP/bin/php/php5.2.17/include/php

  • Настройте PHP-источники (создайте необходимые файлы, например zend_config.h, tsrm_config.h и т. Д.):

    cd /Applications/MAMP/bin/php/php5.?.??/include/php

    ./configure

Этот процесс был для другого исправления, но это устраняло проблемы с php.h, которые не были найдены

Спасибо, где я нашел ответы -:

Блог Томаса Хантера

Процесс детализации Google Doc

У меня была такая же проблема, пытаясь pecl install -f ssh2 с помощью MAMP.

Вот как я его исправил:

  1. MAMP не предоставляет архив исходного кода для PHP 5.4.10, поэтому загрузите его с php.net
  2. Извлеките архив исходного кода в /Applications/MAMP/bin/php/php5.4.10/include/php
  3. Запустите ./configure чтобы настроить исходный код для вашей платформы (без этого шага установка pecl не сможет найти кучу файлов заголовков)
  4. Повторите pecl установки

(спасибо автору Стивена, который почти такой же)

Это дополнение к ответу Стивена и комментарий Грега

При компиляции xdebug 2.3.2 для php 5.6.2 на OSX 10.10.2 я не мог избавиться от

Файл "zend_config.h" не найден

до тех пор, пока я не добавлю следующую опцию ./configure в папку php:

./configure –without-iconv

Кредиты для Кэмерона Браунинга

Модули PECL являются скомпилированными модулями, для их установки нужны заголовки PHP. Вы можете найти заголовки на php.net/downloads.php, убедитесь, что вы загружаете версию, соответствующую вашей версии PHP. Затем вы можете выполнить следующее: Установка PHP OAuth в среде MAMP