अजगर के लिए सुन्न और डरावना कैसे स्थापित करें?


36

मैं phyton 2.7.5 के लिए numpy और scipy को स्थापित करने की कोशिश करने के लिए थक गया हूं, मुझे अजगर के इस संस्करण की आवश्यकता है क्योंकि मेरा अंतिम लक्ष्य वर्ग ( http://class-code.net/ ) और montepython ( http: montepython) स्थापित करना है .net / )।

(मेरे पास ubuntu 12.04 है)

जब मैंने numpy या scipy को आयात करने की कोशिश की, तो मुझे हर बार निम्न त्रुटि मिलती है:

$ phyton2.7
>>> import numpy
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/lib/python2.7/dist-packages/numpy/__init__.py", line 137, in <module>
  import add_newdocs
File "/usr/lib/python2.7/dist-packages/numpy/add_newdocs.py", line 9, in <module>
  from numpy.lib import add_newdoc
File "/usr/lib/python2.7/dist-packages/numpy/lib/__init__.py", line 4, in <module>
  from type_check import *
File "/usr/lib/python2.7/dist-packages/numpy/lib/type_check.py", line 8, in <module>
  import numpy.core.numeric as _nx
File "/usr/lib/python2.7/dist-packages/numpy/core/__init__.py", line 5, in <module>
  import multiarray
ImportError: /usr/lib/python2.7/dist-packages/numpy/core/multiarray.so: undefined        symbol: PyUnicodeUCS4_AsUnicodeEscapeString

>> import scipy
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/lib/python2.7/dist-packages/scipy/__init__.py", line 78, in <module>
  from numpy import show_config as show_numpy_config
File "/usr/lib/python2.7/dist-packages/numpy/__init__.py", line 137, in <module>
  import add_newdocs
File "/usr/lib/python2.7/dist-packages/numpy/add_newdocs.py", line 9, in <module>
  from numpy.lib import add_newdoc
File "/usr/lib/python2.7/dist-packages/numpy/lib/__init__.py", line 4, in <module>
  from type_check import *
File "/usr/lib/python2.7/dist-packages/numpy/lib/type_check.py", line 8, in <module>
  import numpy.core.numeric as _nx
File "/usr/lib/python2.7/dist-packages/numpy/core/__init__.py", line 5, in <module>
  import multiarray
ImportError: /usr/lib/python2.7/dist-packages/numpy/core/multiarray.so: undefined symbol: PyUnicodeUCS4_AsUnicodeEscapeString

मेरे द्वारा की गई त्रुटि से छुटकारा पाने के लिए:

  1. संतुष्ट अजगर आवश्यकता: $ sudo apt-get install build-essential python-dev gfortran
  2. Apt-get के साथ स्थापित करें: $ sudo apt-get install python-numpy python-scipy python-matplotlib ipython ipython-notebook python-pandas python-sympy python-nose
  3. पाइप के साथ आवश्यकता को स्थापित करें: $ sudo pip install requests
  4. ... और पाइप के साथ स्थापित करने की कोशिश की: $ sudo pip install numpyऔर$ sudo pip install scipy
  5. मेरे पास पहले से ही पर्यावरण export PYTHONPATH=/usr/lib/python2.7/dist-packages:${PYTHONPATH} संस्करण है : पिछली बार जब मैंने सुन्न और डरावना (पुराने ubuntu संस्करण 10.x में) स्थापित किया था, तो यह मेरे लिए काम कर रहा था।
  6. sudo sh -c "wget http://python-distribute.org/distribute_setup.py -O- | python" sudo sh -c "wget https://raw.github.com/pypa/pip/master/contrib/get-pip.py -O- | python" और फिर दोनों को पाइप के साथ स्थापित करें (4)

    लेकिन अब ऐसा लगता है कि python-distribute.org का सर्वर डाउन हो गया है। मुझे निम्नलिखित त्रुटि मिली:

    http://python-distribute.org/distribute_setup.py
    Resolving python-distribute.org (python-distribute.org)... failed: Name or service not known.
    wget: unable to resolve host address `python-distribute.org'
  7. मैंने सिनैप्टिक और उबंटू सॉफ्टवेयर सेंटर से सुपी और स्कैपी स्थापित करने की भी कोशिश की थी

मैं इस प्रयास में विफल रहा था और अब मुझे नहीं पता कि क्या करना है। क्या मैं कुछ भूल रहा हूँ? मैं अजगर के लिए सही तरीके से सुन्न और डरावना कैसे प्राप्त कर सकता हूं? किसी भी विचार की सराहना की जाएगी।

जब मैं करता हूं

echo $PYTHONPATH

मुझे मिला

/usr/lib/python2.7/dist-packages

कृपया echo $PYTHONPATHअपने प्रश्न का आउटपुट जोड़ सकते हैं । धन्यवाद :-)
MadMike

शायद यह मदद कर सकता है: effbot.org/pyfaq/…
रमानो

ठीक है, @MadMike मुझे एक समस्या है जिसके साथ $PYTHONPATHमैं पहले से ही अपनी परिभाषाओं को हटा देता हूं .bashrc, लेकिन मेरे पास अभी भी कहीं और एक परिभाषा है क्योंकि मेरे पास अभी भी env var $PYTHONPATHहै जिसके लिए मुझे: bash: /usr/lib/python2.7/dist-packages:: No such file or directory(डबल कोलन) ...
Jorge

मैं पहले से ही .bashrcफ़ाइल में लिखकर सही कर export PYTHONPATH=/usr/lib/python2.7/dist-packagesरहा हूँ ... मैं करता हूँ कि UCS4 बिल्ड / UCS2 का निर्माण @Rmano सबसे सफल है लेकिन मुझे अभी भी दोनों मामलों में एक ही समस्या है ...:
जॉर्ज

1
क्रेडिट @ रमनो को जाना चाहिए। सुन्न और डरावना के एक छोटी गाड़ी संस्करण के साथ एक समस्या थी। उन्नत संस्करण के साथ सब कुछ उम्मीद के मुताबिक काम करता है।
मेडमाइक

जवाबों:


41

ठीक है, इंस्टॉलेशन गाइड का पालन करें :

  1. यह कहता है कि आपको 2.7 python की आवश्यकता है (जो आपके पास पहले से है):

    $ python --version
    Python 2.7.4
  2. फिर यह कहता है कि आपको संख्यात्मक पैकेज की भी आवश्यकता है, संस्करण> = 1.4.1:

    apt-कैश पॉलिसी अजगर-सुन्न
    अजगर-numpy:
    स्थापित: (कोई नहीं)
    उम्मीदवार: 1: 1.7.1-1ubuntu1
    संस्करण तालिका:
     1: 1.7.1-1ubuntu1 0
        500 http://archive.ubuntu.com/ubuntu/ raring / main amd64 पैकेज

    जैसा कि आप देख सकते हैं, मेरे पास संख्यात्मक संस्करण 1.7.1 उपलब्ध है, इसलिए इसे स्थापित करने के लिए आगे बढ़ें:

    sudo apt-get install python-numpy
  3. अब यह कहता है कि हमें साइथॉन की जरूरत है, अगर यह पैकेज उपलब्ध है तो चेक करने दें:

    apt-कैश पॉलिसी साइथन
    cython:
    स्थापित: (कोई नहीं)
    उम्मीदवार: 0.17.4-0ubuntu1
    संस्करण तालिका:
     0.17.4-0ubuntu1 0
        500 http://archive.ubuntu.com/ubuntu/ raring / main amd64 पैकेज

    हमारे पास यह है, हम इसे स्थापित करते हैं:

    sudo apt-get install cython

    कृपया, ध्यान दें कि अन्य पैकेज हैं जो निर्भरता हैं जो भी स्थापित किए जा रहे हैं।

  4. अजीब तरह से पर्याप्त है, हमें भी घिसे-पिटे मॉड्यूल की आवश्यकता है:

    sudo apt-get install python-scipy
  5. परीक्षण । एक टर्मिनल में अजगर खोलें और निम्नलिखित टाइप करें:

    $ python
    Python 2.7.4 (default, Sep 26 2013, 03:20:26) 
    [GCC 4.7.3] on linux2
    Type "help", "copyright", "credits" or "license" for more information.
    >>> import numpy
    >>> import scipy
    >>> import cython
    >>> exit()

    उपरोक्त, त्रुटियों के बिना होना चाहिए। यदि कुछ गलत हो गया है, तो ऊपर जाएं और गाइड को फिर से पढ़ें, आप एक कदम भूल गए / छोड़ दिया।

  6. अपने पृष्ठ से CLASS स्रोतों को डाउनलोड करते हुए, टर्मिनल में निर्देशिका में जाएं, और इसे अनटार करें और इसे बनाएं:

    सीडी जहां / / टार / है
    tar zxf class_v2.0.2.tar.gz
    cd class_v2.0.2
    बनाना

    यहां हम पूरा होने तक इंतजार करेंगे। एक बार यह पूरा हो जाने के बाद, हम अजगर निर्देशिका में जाते हैं और जादू शुरू करते हैं। निर्देशिकाओं से स्थानांतरित किए बिना इसे चलाएं:

    सीडी अजगर
    अजगर setup.py निर्माण
    python setup.py स्थापित --user

    अब हमारे पास हमारी उपयोगकर्ता निर्देशिका में CLASS स्थापित है। हमें इसका परीक्षण करना चाहिए!

    python
    Python 2.7.4 (default, Sep 26 2013, 03:20:26)
    [GCC 4.7.3] on linux2
    Type "help", "copyright", "credits" or "license" for more information.
    >>> from classy import Class
    >>> exit()

    यहाँ तक सब कुछ अच्छा है।

  7. अब सच्चाई का समय, अपनी कोड निर्देशिका में माहिपथॉन टैरबॉल डाउनलोड करें:

    सीडी ~
    mkdir कोड
    सीडी कोड
    wget https://www.dropbox.com/s/l7mnhwsktp1m8b5/montepython_v1.2.5.tar.bz2?dl=1 -O montepython_v1.2.1.tar.bz2
    टार jxf montepython_v1.2.5.tar.bz2

    इंस्टॉलेशन निर्देशों में कुछ नोट ऐसे हैं जो इस अजीबोगरीब मामले में (एक नए इंस्टाल) प्रासंगिक नहीं हैं लेकिन जब आप मोंटेपिथॉन को अपडेट करते हैं तो यह महत्वपूर्ण हो सकता है।

  8. यह बदलाव महत्वपूर्ण है। आपको याद है कि आपने CLASS कहाँ स्थापित किया है? अब आपको मोंटे पायथन को बताना चाहिए कि वह कहाँ है। मेरे मामले में /home/braiam/src/class_v2.0.2/class, यह आपका अलग हो सकता है। आप findइसे देखने के लिए उपयोग कर सकते हैं :

    find ~ -name class -print

    ठीक है, अब मैं default.confआपकी पसंद के अनुसार फ़ाइल को संशोधित करता हूँ (मैं नैनो का उपयोग करूँगा) और rootपथ को संशोधित करूँगा , इसलिए पूरी फ़ाइल इस तरह दिखाई देगी:

    # Fill in the relevant path to your personal distribution. 
    # If you create a new file out of this one, please remember to call
    # MontePython.py with the option '-conf my.conf'
    
    # At minimum, this file should contain one line:
    # ** path['cosmo'] =  path to the cosmological code you are using. Note, if you are
    # using a modified version of class, be sure that the path contains the word
    # class, otherwise the code might not recognise it.
    
    # If you want to use a data folder different from the one present in the folder
    # you are executing the code, please also add:
    # ** path['data']  =  /path/to/the/other/data/
    
    root = '/home/braiam/src/class_v2.0.2/'
    
    path['cosmo']           = root+'/class/'

    फ़ाइल सहेजें और बाहर निकलें।

  9. टेस्ट मोंटेपिथॉन! यदि सबकुछ ठीक था, तो आपको code/MontePython.py --helpअपने मोंटेपीथॉन्ग निर्देशिका में चलाने में सक्षम होना चाहिए और सब कुछ चलना चाहिए:

    ~ / src / montepython $ code / MontePython.py --help
    उपयोग: मोंटेप्थोनहोम [-एच] [-N चरणों की संख्या] [-o आउटपुट फ़ोल्डर]
                      [-प इनपुट परम फ़ाइल] [-c इनपुट कोव मैट्रिक्स]
                      [-ज जंपिंग मेथड] [-फ जंपिंग फैक्टर]
                      [-conf विन्यास फाइल] [-चिन_नंबर श्रृंखला संख्या]
                      [-R श्रृंखला से पुनः आरंभ करें] [-सबसे अच्छी फिट फ़ाइल से पुनः आरंभ करें]
                      [-info [वांछित फ़ाइल की गणना जानकारी [वांछित फ़ाइल की गणना जानकारी ...]]]
                      [[डिब्बे की वांछित संख्या, डिफ़ॉल्ट 20 है] [-no_mean]
                      [-comp तुलना फ़ोल्डर]
                      [कस्टम जरूरतों के लिए कस्टम प्लाट फाइल] [-नोप्लोट] [-all]
                      [आउटपुट फ़ाइल के लिए कस्टम परिवर्तन एक्सटेंशन]
                      [वांछित फ़ॉन्ट को अनुकूलित करें, डिफ़ॉल्ट 15 है]
                      [-इच्छित वांछित टिकसाइज़ करें, डिफ़ॉल्ट १३ है]
    
    मोंटे पायथन, पायथन में एक मोंटे कार्लो कोड

    वैकल्पिक तर्क: -h, --help यह मदद संदेश और बाहर निकलने को दिखाता है -N चरणों की संख्या -o आउटपुट फ़ोल्डर -p इनपुट परम फ़ाइल -सी इनपुट कोव मैट्रिक्स -j जंपिंग विधि -फर्ट जंपिंग फैक्टर -conf विन्यास फाइल -चैन_नंबर चेन नंबर श्रृंखला से पुनः आरंभ करें सबसे अच्छा फिट फ़ाइल से पुनः आरंभ -इनफो [वांछित फ़ाइल की गणना जानकारी [वांछित फ़ाइल की गणना जानकारी ...]] डिब्बे की वांछित संख्या, डिफ़ॉल्ट 20 है -कोई मतलब नहीं फ़ोल्डर तुलना करें कस्टम जरूरतों के लिए कस्टम प्लॉट फ़ाइल -noplot -सब आउटपुट फ़ाइल के लिए कस्टम परिवर्तन एक्सटेंशन वांछित फ़ॉन्ट को अनुकूलित करें, डिफ़ॉल्ट 15 है -इच्छुक वांछित टिकसाइज़ करें, डिफ़ॉल्ट 13 है

इसके साथ, आपके पास मोंटेपिथॉन स्थापित है और रोल करने के लिए तैयार है!


आपके उत्तर के लिए धन्यवाद। बेशक, पहले चरण के रूप में मैं मोंटेपिथॉन द्वारा दिए गए इंस्टॉलेशन गाइड का पालन करता हूं, दुर्भाग्य से मैं आपके चरण (5) में फंस गया हूं क्योंकि पायथन स्कैपी / सुन्न नहीं मिला। इसलिए मैंने वैकल्पिक कदम उठाने की कोशिश की।
जॉर्ज

1
@JorgeMastache आपको अपने पुस्तकालयों को साफ करना चाहिए, हो सकता है कि आपने कहीं गड़बड़ कर दी हो और अजगर इसका इस्तेमाल करने की कोशिश कर रहा हो। एक नए उपयोगकर्ता का उपयोग करें (यदि आपने उपयोग नहीं किया था sudo) या sudo make uninstallप्रोग्राम को अनइंस्टॉल करें या करें।
Braiam

मैं पहली बार एक नए ubunutu (नए कंप्यूटर) में स्थापना कर रहा था। मैं सिर्फ एक अन्य उपयोगकर्ताओं को चेतावनी देना चाहता हूं कि अजगर से संबंधित पैकेज की स्थापना रद्द करने से सावधान रहें क्योंकि यह आपके ubuntu-desktop या गणित पुस्तकालयों के साथ गड़बड़ कर सकता है। मैं पहले से ही फिर से कॉन्फ़िगर करने / अजगर बनाने और अपने कदम (1) और (6) का उपयोग करके मोंटेपिथॉन स्थापित करने का प्रबंधन करता हूं ताकि आपके उत्तरों के लिए धन्यवाद और डरावना स्थापित किया जा सके।
जॉर्ज

1
@JorgeMastache जो बनाए रखने के लिए एक दर्द होगा, लेकिन ठीक है।
ब्रियम
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.