में अम्पी 1.8 इंस्टॉल करें मेरी परियोजना के भीतर, मुझे (1.) को Numpy 1.8 में शामिल एक सुविधा का उपयोग करना है, लेकिन पिछले संस्करणों में नहीं (numpy.set_printoptions
का विकल्प)।ट्रेविस सीआई
चूंकि ट्रैविस सीआई बिल्ड मशीन उबंटू 12.04 पर आधारित हैं, डिफ़ॉल्ट रूप से मेरे पास केवल नकली 1.6.1 उपलब्ध है। मैं तो Ubuntu 14.04 के लिए Numpy-1.8.1-डेबियन-पैकेज स्थापित करने की कोशिश की और इसे मैन्युअल रूप से निर्भरता है, जो आगे की समस्याओं के लिए नेतृत्व किया है: Numpy 1.8 स्थापित करने के लिए सक्षम होने के लिए
मैं संकुल libblas3
स्थापित करने की आवश्यकता और liblapack3
, जो संभव नहीं है जब liblapack3gf
और libblas3gf
सिस्टम (जो डिफ़ॉल्ट रूप से वहां हैं) पर स्थापित हैं, क्योंकि संकुल उन्हें "तोड़ देंगे"। यदि मैं apt-get remove
उन्हें, स्वचालित रूप सेlibatlas3gf-base
उसी apt-get
-command (जो मानक उबंटू सिस्टम पर मामला नहीं है, के माध्यम से स्थापित किया जा रहा है, मैं भी सुनिश्चित करने के लिए अपनी स्थानीय मशीन पर एक सेट अप करता हूं)। यदि मैं फिर Vlibatlas3gf-baseV को अनइंस्टॉल करने का प्रयास करता हूं, तो फिर से liblapack3gf
और libblas3gf
स्वचालित रूप से फिर से इंस्टॉल हो रहे हैं।
मुझे वास्तव में पता नहीं है कि इस समस्या को कैसे संभालना है, या ट्रैविस के साथ काम करने के लिए नकली 1.8 प्राप्त करने के लिए इसके आसपास कैसे जाना है। मैंने pip
के माध्यम से here प्रदान किए बिना न्यूम्पी को अपग्रेड करने के सुझावों का भी प्रयास किया, लेकिन ट्रैविस के भीतर यह काम नहीं किया।
किसी भी मदद की अत्यधिक सराहना की जाती है!
बहुत बहुत धन्यवाद!
समाधान:
मैं here और here से, निम्नलिखित .travis.yml
-file को rth के जवाब पूरा आगे मदद से:
language: python
matrix:
include:
- python: 2.7
env: NUMPY=1.8 SCIPY=0.13
notifications:
email: false
before_install:
- travis_retry wget http://repo.continuum.io/miniconda/Miniconda-3.8.3-Linux-x86_64.sh -O miniconda.sh
- chmod +x miniconda.sh
- bash miniconda.sh -b -p $HOME/miniconda
- export PATH=/home/travis/miniconda/bin:$PATH
- conda update --yes conda
install:
- conda create --yes -n test python=$TRAVIS_PYTHON_VERSION
- source activate test
- conda install --yes numpy=$NUMPY scipy=$SCIPY matplotlib pip
- pip install setuptools
- [ ... some other packages to install ... ]
- python setup.py install
script:
- nosetests
अब सब कुछ उम्मीद के रूप में काम करता है। कृपया ध्यान दें: आप नहीं इस सेटअप के साथ पीईएलएब आयात और उपयोग करने में सक्षम होंगे, स्पष्टीकरण के लिए नीचे दी गई टिप्पणियां देखें।
आप शायद (pylab आयात करने के लिए (यह [जवाब] देख PyQt4 स्थापित करने की आवश्यकता https://stackoverflow.com/questions/19231944/anaconda-unable-to-import -pylab)), 'sudo apt-get python-qt4' स्थापित करें। एक साइड नोट के रूप में, जब संभव हो तो 'पिलैब' का उपयोग टालना चाहिए, विशेष रूप से एक गैर-इंटरैक्टिव वातावरण में, और स्पष्ट आयात को प्राथमिकता दी जानी चाहिए: 'एनपी' के रूप में आयात करें, 'आयात matplotlib.pyplot plt' के रूप में आयात करें (यदि आप भूखंडों की आवश्यकता है) आदि – rth
@rth इसे क्यों टाला जाना चाहिए? क्योंकि अगर इसे टालना उचित है, तो मैं ट्रेविस में काम कर रहे पाइलाब को पाने की कोशिश करने के बजाय अपने कोड को बदलने में प्रयास करना चाहता हूं। – mindm49907
ठीक है अगर आप 'पिलैब आयात से' करते हैं, तो 'numpy', 'scipy',' matplotlib' आदि से नाम की जगह में बहुत सारी चीज़ें आयात की जाती हैं और आप वास्तव में क्या हो रहा है इसके नियंत्रण में नहीं हैं। विशेष रूप से यदि आप यूनिट परीक्षण करते हैं, तो यह आवश्यक मॉड्यूल को स्पष्ट रूप से बेहतर आयात करता है। यह वास्तव में आपकी समस्या से संबंधित नहीं है, हालांकि, यह है कि आपके डिफ़ॉल्ट matplotlib बैकएंड को पीईक्यूटी 4 की आवश्यकता होती है (चाहे आप पिलैब का उपयोग करें या नहीं), आप समस्या से बचने के लिए बैकएंड को 'एजीजी' कहने के लिए भी बदल सकते हैं। – rth