2014-07-16 12 views
17

मैं अपने पीआईपी प्रोजेक्ट में पाययामल का उपयोग करना चाहता हूं, लेकिन इसे निर्भरता के रूप में उपयोग करने में परेशानी हो रही है। मुख्य रूप से समस्या यह है कि पीईपी में पाईमैल एक क्रॉस प्लेटफॉर्म इंस्टॉल नहीं है।पाइप निर्भरता के रूप में पाइप/पीईवाईएमएल को पाइप निर्भरता के रूप में स्थापित करें

मैं पाइप का उपयोग करके pyyaml ​​कैसे स्थापित करूं ताकि यह काम करे। ध्यान दें, एक वर्तमान ताजा Ubuntu पर स्थापित मैं जब चल pip install pyyaml

Installing collected packages: pyyaml 
    Running setup.py install for pyyaml 
    checking if libyaml is compilable 
    gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -g -fstack-protector --param=ssp-buffer-size=4 -Wformat -Wformat-security -Werror=format-security -fPIC -I/usr/include/python3.2mu -c build/temp.linux-x86_64-3.2/check_libyaml.c -o build/temp.linux-x86_64-3.2/check_libyaml.o 
    build/temp.linux-x86_64-3.2/check_libyaml.c:2:18: fatal error: yaml.h: No such file or directory 
    compilation terminated. 

    libyaml is not found or a compiler error: forcing --without-libyaml 
    (if libyaml is installed correctly, you may need to 
    specify the option --include-dirs or uncomment and 
    modify the parameter include_dirs in setup.cfg) 

Successfully installed pyyaml 

ध्यान दें कि त्रुटि "सफलतापूर्वक स्थापित" कहते हैं, लेकिन यह नहीं है निम्नलिखित त्रुटि मिलती है। मैं नहीं import yaml

मैं जवाब का कहना है कि की तलाश नहीं कर रहा हूँ मेरी पहले ही वाक्य की वजह से "का उपयोग apt-get" कर सकते हैं। मुझे क्रॉस प्लेटफ़ॉर्म होने के लिए इंस्टॉल करने की आवश्यकता है और एक पाइप निर्भरता के रूप में काम करने की आवश्यकता है, मैं बस इसे सही तरीके से इंस्टॉल करने के तरीके पर सोच नहीं रहा हूं।

यदि यह संभव नहीं है, तो क्या कोई पुस्तकालय मैं प्रतिस्थापन में उपयोग कर सकता हूं?

+0

वर्चुअलनव, ''virtualenv pyenv && में स्थापित करने का प्रयास करें। pyenv/bin/activate && pip pyyaml ​​इंस्टॉल करें & python -c 'आयात yaml'' क्या यह काम कर रहा है? – spinus

+0

@spinus python3 के साथ काम करता है लेकिन python2.7 –

+0

मेरे लिए python2.7 पर भी काम करता है। बहुत अजीब, मुझे नहीं पता कि क्या गलत है। मुझे पता है कि आपने लिखा है कि यह ताजा उबंटू है, लेकिन क्या यह वास्तव में ताजा है? कोई अन्य विचार गलत क्या हो सकता है। – spinus

उत्तर

25

आपको इसे बनाने के लिए कुछ अतिरिक्त पैकेजों की आवश्यकता होगी।

तुम सब pyyaml की स्थापना रद्द करने या उसे बाद में शिकायत यह पहले से ही स्थापित किया गया है कि

pip uninstall pyyaml 

तो निम्न पैकेज स्थापित की जरूरत सबसे पहले:

sudo apt-get install libyaml-dev libpython2.7-dev 

अंत में इसे फिर से

स्थापित
pip install pyyaml 
+0

libpython python 2.7 के लिए डिफ़ॉल्ट है ubuntu –

+3

पर, काम करने के लिए pyyaml ​​के लिए libyaml-dev की आवश्यकता नहीं है। यदि यह स्थापित है pyyaml ​​इसे अधिक कुशल कार्यान्वयन के रूप में उपयोग कर सकता है लेकिन इसकी आवश्यकता नहीं है। मेरे लिए '' पाइप इंस्टॉल pyyaml' 'बाहरी सामान के बिना और एक ही त्रुटि के साथ ठीक काम कर रहा है। – spinus

+0

मुझे एक पाइप निर्भरता और क्रॉस-प्लेटफ़ॉर्म के रूप में काम करने के लिए इंस्टॉल करने की आवश्यकता है। मुझे खेद है कि यह स्पष्ट नहीं था, मैंने अपना प्रश्न संपादित कर लिया है। –

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