osx

2011-11-12 16 views
11

पर pycrypto स्थापित करने में समस्याएं मैं अपने ओएसएक्स मशीन पर एक Django प्रोजेक्ट स्थापित करने की कोशिश कर रहा हूं, जिसके लिए PyCrypto की आवश्यकता है। मैं निम्न त्रुटि हो रही है:osx

running install 
running build 
running build_py 
running build_ext 
running build_configure 
checking for gcc... no 
checking for cc... no 
checking for cl.exe... no 
configure: error: in `/Users/home/Documents/tmp/dlitz-pycrypto-d2170a4': 
configure: error: no acceptable C compiler found in $PATH 
See `config.log' for more details 
Traceback (most recent call last): 
    File "setup.py", line 486, in <module> 
    core.setup(**kw) 
    File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/core.py", line 152, in setup 
    File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/dist.py", line 953, in run_commands 
    File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/dist.py", line 972, in run_command 
    File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/command/install.py", line 573, in run 
    File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/cmd.py", line 326, in run_command 
    File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/dist.py", line 972, in run_command 
    File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/command/build.py", line 127, in run 
    File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/cmd.py", line 326, in run_command 
    File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/dist.py", line 972, in run_command 
    File "setup.py", line 292, in run 
    self.run_command(cmd_name) 
    File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/cmd.py", line 326, in run_command 
    File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/dist.py", line 972, in run_command 
    File "setup.py", line 319, in run 
    raise RuntimeError("autoconf error") 
RuntimeError: autoconf error 

उत्तर

9
configure: error: no acceptable C compiler found in $PATH 

यह त्रुटि आत्म व्याख्यात्मक है। एक सी संकलक प्राप्त करें।

एक्सकोड काम करना चाहिए।

+3

कमांड लाइन टूल्स एक अलग इंस्टॉल है: https://developer.apple.com/downloads/index.action# – bdargan

5

आप शेर पर Xcode 4.x का उपयोग कर रहे हैं, तो आप को संकलित करने और स्थापित कुछ अतिरिक्त हुप्स के माध्यम से कूद करने के लिए इस प्राप्त करने के लिए की आवश्यकता होगी:

1) Xcode में, जाना पसंद> डाउनलोड, और क्लिक करें पायथन द्वारा आवश्यक संकलक को स्थापित करने के लिए "कमांड लाइन टूल्स" के बगल में "इंस्टॉल करें" बटन पर।

2) मेरे मामले में, मुझे जीसीसी से जीसीसी-4.2 तक एक अस्थायी प्रतीकात्मक लिंक बनाना पड़ा ताकि पिक्रिप्टो कंपाइलर को बंद कर दिया जा सके।

एक) सुनिश्चित जीसीसी स्थापित किया गया है:

# which gcc
/usr/bin/gcc

ख) सांकेतिक लिंक बनाएँ:

# ln -s /usr/bin/gcc /usr/bin/gcc-4.2

3) सीडी एक टर्मिनल विंडो में, सु रूट पहुँच पाने के लिए अपनी pycrypto निर्देशिका में और निर्माण और स्थापित pycrpto:

# cd ~/Downloads/pycrypto-2.5 (या आपकी बनाम अपनी प्रक्रिया मेरा तरह काम करता है

# rm /usr/bin/gcc-4.2

हैं, तो आप एक कामकाज pycrypto शेर पर स्थापित होना चाहिए:)
# python setup.py build
# python setup.py install

4) पर प्रतीकात्मक कड़ी आप पहले बनाया हटाएँ।

0

माउंटेन शेर के साथ मैंने यहां लॉग इन किया: developer.apple.com/downloads/index.action# - धन्यवाद bdargan!

मैंने एक्सकोड के लिए 'कमांड लाइन टूल्स (ओएस एक्स माउंटेन शेर) डाउनलोड किया। इसे पूरी तरह हल नहीं किया। मेरा एक्सकोड पुराना था (3.2.6) इसलिए मुझे ऊपर वर्णित पृष्ठ से 4.4 संस्करण प्राप्त करना पड़ा। यही वजह है कि मैं 1) का पालन नहीं कर सकांजर के जवाब में कदम। एक्सकोड के पुराने संस्करण में कोई वरीयताएँ> डाउनलोड विकल्प नहीं थे।

मैंने पढ़ा है कि आप ऐप स्टोर से एक्सकोड भी डाउनलोड कर सकते हैं। (http://www.chrisk.de/blog/2011/03/how-to-upgrade-to-xcode-4-or-uninstall-xcode-3/)

डेवलपर.एपल से एक्सकोड 4 .com ने एक्सकोड 3 को प्रतिस्थापित नहीं किया और इसे डेवलपर-पुराने में नहीं ले जाया, इसलिए मैंने यह सुनिश्चित करने के लिए ऐप स्टोर से इसे फिर से स्थापित करने का निर्णय लिया ताकि सब कुछ ठीक काम करेगा। इसके अलावा कमांड लाइन टूल्स को अलग से डाउनलोड करने की आवश्यकता नहीं है क्योंकि इसे एक्सकोड 4 वरीयताओं से किया जा सकता है क्योंकि स्स्टिंगर ने कहा था।

मैंने निम्न आदेश के साथ ऐप स्टोर से इंस्टॉल करने से पहले पिछले एक्सकोड इंस्टॉल को अनइंस्टॉल किया।

sudo /Developer/Library/uninstall-devtools --mode=all

मैं भागने की कोशिश की:

# python setup.py build

मैं निम्न चेतावनी मिल गया।

warning: GMP or MPIR library not found; Not building Crypto.PublicKey._fastmath.

तो मैं Homebrew के साथ जीएमपी स्थापित करने के लिए कोशिश की।

sudo brew install gmp

लेकिन है कि मैं नहीं था के लिए ...

# sudo ln -s /usr/bin/gcc /usr/bin/gcc-4.2

# sudo ln -s /usr/bin/g++ /usr/bin/g++-4.2

लेकिन Homebrew'make check' पर फ्रीज और मैं निरस्त करने के लिए किया था। यह भी ठंडा हुआ मैंने 'ब्रू डॉक्टर' किया और इसमें कुछ अजीब मुद्दे थे। https://github.com/mxcl/homebrew/issues/7252 पर चर्चा देखें। मुझे अन्य स्थापित सामानों के साथ कुछ समस्याएं भी थीं।

मैंने होमब्रू अपडेट किया और 'ब्रू डॉक्टर' में सभी मुद्दों को ठीक किया। इसके बाद मैंने # brew install gmp फिर से किया। इस बार के माध्यम से चला गया। Setup.py के साथ अभी भी कोई सफलता नहीं है।

अंततः मैंने # sudo pip install pycrypto को आजमाया। मैंने सोचा कि मैंने पहले किया था, लेकिन अब यह सही ढंग से pycrypto स्थापित करने लग रहा था। मुझे लगता है कि जीएमपी या एमपीआईआर वास्तव में स्थापित करने की ज़रूरत नहीं थी। अब और यकीन नहीं है। :)

+2

यह मेरा अनुभव है हर बार जब मुझे लगता है कि एक पाइप इंस्टॉल गर्व से होगा ओएसएक्स माउंटेन शेर पर। आप सोचते हैं कि यह स्रोत से निर्माण करने से आसान होगा और बदले हुए envvars के अजीब संयोजन के साथ समाप्त होगा और संकुल स्थापित करेगा जब तक कि कुछ संयोजन आखिरकार काम नहीं करता है, रहस्य में घिरा हुआ है। मैं मानवता के खिलाफ अपराधों के लिए हेग में कोशिश की गई संकलकों के एक्सकोड के हैंडलिंग के लिए ज़िम्मेदार लोगों को देखना चाहता हूं। – DeaconDesperado