2012-05-23 9 views
27

मैं PHP सर्वर सेट करने के लिए नया हूं, और मैं अन्य संबंधित पोस्ट के बावजूद गया था, ऐसा लगता है कि मेरे पास कोई भी त्रुटि नहीं है। मैं MAMP 2.0.2 का उपयोग कर रहा है, और पीएचपी 5.3.6, चल रहा है और मैं अपने स्थानीय MAMP पर oAuth स्थापित करने के लिए कोशिश कर रहा था, निम्न कमांड का प्रयोग:मैक ओएस शेर पर एमएएमपी में पीईसीएल के साथ ओएयूथ स्थापित करने का प्रयास करते समय

:

$ 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, जो बॉक्स से बाहर काम करना चाहिए में बंडल है ....

अद्यतन:

मैं कहीं और एक पोस्ट पढ़ सुझाव है कि कॉन्फ़िग फ़ाइल के डेटा है, जो स्थापित पथ रखती में सही हैं, तो मैं निम्न फ़ाइल में कुछ मूल्य बदल दिया है:

$ ./pecl install oauth 

कौन सा यह डाउनलोड शुरू होता है और खोल, लेकिन जब यह स्थापित करने का प्रयास है, यह दे:

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

फिर, मैं आदेश का उपयोग करें एस:

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 

फिर, क्या हो रहा है?

उत्तर

64

मुझे पता है कि यह पुराना है लेकिन मुझे एक ही समस्या होने पर यह प्रश्न मिला।

MAMP doesn’t ship with a bunch of the PHP sources

  • डाउनलोड MAMP घटकों और कॉन्फ़िगर
  • यूआरएल: 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 से स्रोत डाउनलोड करें क्योंकि वे एमएएमपी घटक डाउनलोड में नहीं हैं (क्रेडिट में क्रेडिट pulkitsinghal /Applications/MAMP/bin/php/php5.*/include या/आवेदन में

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

  • Untar php-5.xxtar.gz: पिता)

  • अपने PHP स्रोतों के लिए निर्देशिका बनाएं/MAMP/bin/PHP5/में शामिल हैं:

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

  • (बिना संस्करण नंबर) php करने के लिए अपने php-5.xx निर्देशिका का नाम बदलें:

    01,235,

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

  • कॉन्फ़िगर पीएचपी स्रोतों (यह आवश्यक फ़ाइलें पैदा हो जाएगी अर्थात zend_config.h, tsrm_config.h, आदि):

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

    ./configure

प्रक्रिया एक और सुधार के लिए था, लेकिन इस php.h नहीं किया जा रहा पाया जहाँ मैं उत्तर नहीं मिले करने

क्रेडिट के साथ मुद्दों का समाधान: -

Thomas Hunter Blog

Google Doc detailing process

+0

यह मेरे लिए काम नहीं करता था लेकिन किसी और में खोदने का समय नहीं था। –

+2

बहुत बहुत धन्यवाद - मैंने php 5.44 – monofonik

+3

के साथ php mongo ड्राइवर स्थापित करने के लिए इसका उपयोग किया है यदि आपको निम्न '/Applications/MAMP/bin/php/php5.4.4/include/php/Zend/zend.h मिलता है: 51:11: घातक त्रुटि: 'zend_config.h' फ़ाइल नहीं मिली 'सुनिश्चित करें कि आप php स्रोतों को कॉन्फ़िगर करें। यानी निर्देशिका में जहां आपने सभी फाइलों को कॉपी किया है ./configure – greg

28

मुझे एमएएमपी के साथ pecl install -f ssh2 पर कोशिश करने के दौरान एक ही समस्या थी।

यहाँ कैसे मैं इसे ठीक किया गया है:

  1. MAMP पीएचपी 5.4.10 के लिए स्रोत कोड संग्रह प्रदान नहीं करता है तो से php.net
  2. इसे डाउनलोड/अनुप्रयोग/MAMP/बिन करने के स्रोत कोड संग्रह निकालें /php/php5.4.10/include/php
  3. भागो ./configure अपने प्लेटफॉर्म के लिए स्रोत कोड को कॉन्फ़िगर करना (इस चरण के बिना PECL हेडर फाइल के एक झुंड की तलाश में असफल हो जायेगी स्थापित)
  4. पुन: प्रयास करें अपने pecl स्थापित

+5

यह आसान उत्तर है। ध्यान देने योग्य एक बात: असम्पीडित PHP 5.4.10 फ़ोल्डर को '/ include' निर्देशिका में रखने के बाद बस' php' का नाम बदलें, मैं उस चरण के बारे में उलझन में था। –

+1

यह उत्तर स्वीकार किया जाना चाहिए, यह समस्या को हल करता है, स्पष्ट रूप से समझाया गया है और मुझे लगता है कि यह लंबे समय तक काम करेगा। सबसे ज्यादा मतदान की तरह नहीं। – TCB13

+0

लेकिन टर्मिनल में इन आदेशों को चलाने से एमएएमपी स्थापना प्रभावित नहीं होती है, लेकिन PHP की सिस्टम स्थापना जो मेरी मदद करने के लिए प्रकट नहीं होती है। – zkent

1

PECL मॉड्यूल (स्टीफन जवाब जो बहुत ज्यादा एक ही है करने के लिए बहुत धन्यवाद) मॉड्यूल संकलित किए जाते हैं ताकि उन्हें स्थापित करने के लिए में, आप PHP हेडर की जरूरत है। आप php.net/downloads.php पर हेडर पा सकते हैं सुनिश्चित करें कि आप एक संस्करण डाउनलोड करें जो आपके PHP संस्करण से मेल खाता है। तो फिर तुम इस का पालन कर सकते हैं: Installing PHP OAuth in MAMP environment

6

यह

जब OSX 10.10.2 पर xdebug 2.3.2 संकलन php 5.6.2 के लिए, मैं

छुटकारा नहीं मिल सकता है स्टीफन जवाब और ग्रेग की टिप्पणी करने के लिए एक पूरक है

./configure --without-iconv

Credits to Cameron Browning

:

'zend_config.h' file not found

त्रुटि जब तक मैं php फ़ोल्डर में कॉन्फ़िगर करने के लिए निम्न विकल्प जोड़

संबंधित मुद्दे