lxml

2010-03-03 14 views
22

स्थापित करने के लिए easy_install स्थापित करना ... मैं इस तथ्य के साथ पकड़ने आया हूं कि ElementTree ऐसा करने वाला नहीं है जो मैं करना चाहता हूं। मैंने lxml के लिए प्रलेखन की जांच की है, और ऐसा प्रतीत होता है कि यह मेरे उद्देश्यों को पूरा करेगा। Lxml प्राप्त करने के लिए, मुझे easy_install प्राप्त करने की आवश्यकता है। तो मैंने इसे here से डाउनलोड किया, और इसे /Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/ में रखा। तब मैं उस फ़ोल्डर में गया, और sh setuptools-0.6c11-py2.6.egg भाग गया।lxml

सफलतापूर्वक स्थापित किया गया। तब मैं उत्साहित हो गया क्योंकि मैंने सोचा था कि easy_install का पूरा बिंदु यह था कि मैं बस easy_install lxml के माध्यम से स्थापित कर सकता था, और lxml जादुई रूप से डाउनलोड, निर्मित और स्थापित किया जा सकता है, जो मेरे आयात के आनंद के लिए तैयार है। तो मैं easy_install lxml भाग गया। मैंने नीचे दिए गए परिणामों को चिपकाया। मुझे क्या करना चाहिए?

easy_install lxml 
Searching for lxml 
Reading http://pypi.python.org/simple/lxml/ 
Reading http://codespeak.net/lxml 
Best match: lxml 2.2.6 
Downloading http://codespeak.net/lxml/lxml-2.2.6.tgz 
Processing lxml-2.2.6.tgz 
Running lxml-2.2.6/setup.py -q bdist_egg --dist-dir /var/folders/49/49N0+g5QFKCm51AbzMtghE+++TI/-Tmp-/easy_install-rxbP6K/lxml-2.2.6/egg-dist-tmp-fjakR0 
Building lxml version 2.2.6. 
NOTE: Trying to build without Cython, pre-generated 'src/lxml/lxml.etree.c' needs to be available. 
Using build configuration of libxslt 1.1.12 
Building against libxml2/libxslt in the following directory: /usr/lib 
unable to execute gcc-4.0: No such file or directory 
error: Setup script exited with error: command 'gcc-4.0' failed with exit status 1 
+1

(फिर से: कोड कोड बनाने के लिए चार रिक्त स्थान से इंडेंट करें) या संपादक में "01010" बटन पर क्लिक करें, जबकि आपके पास कुछ चीजें हाइलाइट की गई हैं। –

उत्तर

23

सबसे पहले हम easy_install का उपयोग नहीं करते हैं। हम pip का उपयोग करते हैं। कृपया इसके बजाय पीआईपी का प्रयोग करें।

अपनी विशेष परेशानी पाने के लिए, जैसा कि टिप्पणियां बताती हैं, आप जीसीसी गायब हैं। ओएस एक्स पर, Xcode कमांड लाइन टूल्स जीसीसी प्रदान करता है, साथ ही ओएस एक्स पर सॉफ्टवेयर बनाने के लिए आवश्यक कई अन्य कार्यक्रम भी प्रदान करता है। ओएस एक्स 10.9 (मैवरिक्स) और नए के लिए, या तो ऐप स्टोर के माध्यम से एक्सकोड स्थापित करें, या वैकल्पिक रूप से, केवल एक्सकोड इंस्टॉल करें

xcode-select --install 

साथ कमांड लाइन उपकरण अधिक जानकारी के लिए, कृपया Apple Developer FAQ देख सकते हैं या "स्थापित Xcode कमांड लाइन उपकरण" के लिए वेब पर खोज।

ओएस एक्स के पुराने संस्करणों के लिए, आप downloads page of the Apple Developer website (मुफ्त पंजीकरण आवश्यक) से एक्सकोड कमांड लाइन टूल्स प्राप्त कर सकते हैं।

एक बार जब आप जीसीसी स्थापित कर लेंगे, तो आप अभी भी संकलन के दौरान त्रुटियों का सामना कर सकते हैं यदि आपके सिस्टम पर सी/सी ++ लाइब्रेरी निर्भरताएं स्थापित नहीं हैं। ओएस एक्स पर, Homebrew प्रोजेक्ट ऐसी निर्भरताओं को स्थापित और प्रबंधित करने का सबसे आसान तरीका है। Homebrew वेबसाइट पर निर्देशों का पालन करें आपके सिस्टम पर Homebrew स्थापित करने के लिए है, तो जारी

brew update 
brew install libxml2 libxslt 

संभवत: आपके मामले में आगे मुसीबत खड़ी, आप /Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/ में डाउनलोड किया setuptools रखा। कृपया इस स्थान पर कोई भी फाइल डाउनलोड न करें। इसके बजाए, मेरा सुझाव है कि आप फ़ाइल को अपनी होम निर्देशिका, या अपनी सामान्य Downloads निर्देशिका में डाउनलोड करें। इसे डाउनलोड करने के बाद, आपको sh setuptools-X.Y.Z.egg चलाया जाना चाहिए, जो इसे उचित site-packages में उचित रूप से इंस्टॉल करेगा और आपके पथ पर निष्पादन योग्य easy_install डाल देगा।

+0

+1 इंगित करने के लिए हमें पीआईपी का उपयोग करना चाहिए। मुझे पता नहीं था। यह अच्छा है जब पैकेज बस काम करते हैं। महान ग्राफिक – Muhd

+2

+1 ऊपर पाइप लिंक टूटा हुआ है। मुझे लगता है कि यह यह है: https://pip.pypa.io/en/latest/ – Purrell

+0

के लिए –

2

ऐसा लगता है कि lxml एक ऐसा एक्सटेंशन बनाना चाहता है जिसके लिए सी कंपाइलर तक पहुंच की आवश्यकता हो। इसके लिए आपको gcc की आवश्यकता होगी। sudo apt-get install build-essential चलाने का प्रयास करें और इसे इस विशेष समस्या को ठीक करना चाहिए।

+0

sudo apt-get gcc sudo: apt-get: कमांड नहीं मिला – Alex

+1

यह किस ओएस/वितरण पर है? –

+0

ओएसएक्स 10.5.8, पायथन 2.6 – Alex

13

सुनिश्चित करें कि आप libxml2-देव और libxslt1-देव स्थापित

apt-get install libxml2-dev 
apt-get install libxslt1-dev 

फिर अपने स्थापना को ठीक से निर्माण करना चाहिए।

+0

यह इंगित करने के लिए धन्यवाद – Purrell

+0

धन्यवाद। इसने काम कर दिया! –

10

कोशिश:

gcc gcc-c++ python-devel libxml2 libxml2-dev libxslt libxslt-dev 

आप किसी भिन्न रूप का उपयोग कर उन्हें स्थापित करने के लिए सक्षम होना चाहिए:: sudo apt-get sudo apt-get install python-lxml

+0

पायथन 3 के लिए "apt-get install python3-lxml" – wheleph

+0

पाइप का उपयोग करने के लिए बेहतर उपयोग करें। यह आपको आपके पैकेज रखरखाव की तुलना में एक नवीनतम संस्करण देगा। जल्द या बाद में आप खुश होंगे कि आपने इसका इस्तेमाल किया था। – mlissner

2

सुनिश्चित करें कि सभी निम्न पैकेज आपके सिस्टम पर स्थापित कर रहे हैं पहले बनाओ सुडो यो स्थापित

उपरोक्त सभी को सफलतापूर्वक स्थापित करने के बाद ही आपको चलाने की कोशिश करनी चाहिए:

sudo pip install lxml 
संबंधित मुद्दे