NumPy instaliavimas

H
  • 1 Bal '11

Sveiki, bandau kaip nors suinstaliuoti šitą modulį į ubuntu 10.10 bet niekaip nesugebu, gal kas instaliavot ir galit pasidalinti patirtim kaip jum pavyko? Nes skaitant aprašymą pusalpį nieko nesigauna.. Nors rašo kad turi..

S
  • 1 Bal '11

Ubuntiškas variantas:

sudo apt-get install python-numpy
python -c 'import numpy; print(numpy.pi)'
3.14159265359

Pythoniškas variantas:

sudo apt-get install build-essential python-dev python-pip
pip -E env install numpy
env/bin/python -c 'import numpy; print(numpy.pi)'
3.14159265359
H
  • 2 Bal '11

Keista vistiek niekaip nesigauna.. Pas mane python 2.7 interpretatorius ir IDLE įrašyti. Pasileidus interaktyvu langą ir parašius import numpy meta klaidą kad tokio modulio nėra.. Bet naudojant bpython programėlę kuri veikia kaip interaktyvus langas ten veikia viskas..

Iš konsolės:

RN067EA-ABB:~$ sudo apt-get install python-numpy
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages were automatically installed and are no longer required:
rpm2cpio librpmbuild1 liblapack-dev patchutils libpcre3-dev librpmio1
librpm1 rpm-common libpng12-dev libpcrecpp0 ttf-lyx python-tz
libreadline-dev python-matplotlib-data libjpeg62-dev python-dateutil
libportmidi0 python-pyparsing libamd2.2.0 libreadline6-dev libncurses5-dev
libumfpack5.4.0 dpatch libbz2-dev
Use 'apt-get autoremove' to remove them.
Suggested packages:
python-numpy-doc python-numpy-dbg python-nose
The following NEW packages will be installed:
python-numpy
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 0B/1,244kB of archives.
After this operation, 5,968kB of additional disk space will be used.
Selecting previously deselected package python-numpy.
(Reading database ... 273013 files and directories currently installed.)
Unpacking python-numpy (from .../python-numpy_1%3a1.3.0-3build1_i386.deb) ...
Processing triggers for man-db ...
Setting up python-numpy (1:1.3.0-3build1) ...
INFO: using unknown version '/usr/bin/python2.7' (debian_defaults not up-to-date?)
Processing triggers for python-central ...
RN067EA-ABB:~$ python -c 'import numpy; print(numpy.pi)'
3.14159265359

Kur paryškinau manau ten slypi bėda. Ir čia dar: http://ikelk.lt/images/48795

E
  • 3 Bal '11

Kažkas keisto.
Šiaip jei numpy reikia skaiciavimams dėl savęs ar svarbūs rezultatai, o ne programuosi kokią nors programą su numpy palaikymu siūlyčiau naudoti pilną python paketą su pilnu matematinių integravimu: http://www.sagemath.org/. Nors rezultatus gausi, bei galėsi naudotis visais paketais (numpy scipy maxima octave mathplotlib) jei copy-pastinsi ar nurodysi kelią, bet vistiek lieka viena problema: kodėl tau neleidžia instaliuoti numpy tiesiog paketo iš repozitoriumo.

S
  • 4 Bal '11

Įtariu, pas tave bėda yra tame, kad pagal nutylėjimą, naudojamas python2.6, ir įdiegtas python-numpy paketas nukeliauja į python2.6, o ne į python2.7.

Tokiu atveju, gali arba rankiniu būdu nusistatyti reikiamus kelius į sys.path.

Arba gali dirbti virtualioje python aplinkoje:

virtualenv --python=/usr/bin/python2.7 myenv
cd myenv
bin/pip install numpy
bin/python --version
bin/python -c 'import numpy; print(numpy.pi)'
H
  • 4 Bal '11

@sirex rašė:
Įtariu, pas tave bėda yra tame, kad pagal nutylėjimą, naudojamas python2.6, ir įdiegtas python-numpy paketas nukeliauja į python2.6, o ne į python2.7.

Tokiu atveju, gali arba rankiniu būdu nusistatyti reikiamus kelius į sys.path.

Arba gali dirbti virtualioje python aplinkoje:

virtualenv --python=/usr/bin/python2.7 myenv
cd myenv
bin/pip install numpy
bin/python --version
bin/python -c 'import numpy; print(numpy.pi)'

Taip ir yra tikriausiai pas mane pagooglines porą dienų iki to nuskikapsčiau, bet skaitant priėjau išvada kad te nėnra taip lengva.. Nepašalinsi 2.6 versijos.. O nurodžius 2.7 versiją gali sutrikti sistemos veikimas.. Susidariau tokį įspūdį kad ant winsozės lengvai urpadėti mokintis programinti.. Nors iš visų aplinkinių kas su manim mokos tik aš vienas bandau naudoti linux..

Pabandžius pasiūlytas komandas gaunu:

~$ virtualenv --python=/usr/bin/python2.7 myenv
Traceback (most recent call last):
File "/usr/lib/command-not-found", line 10, in <module>
import CommandNotFound
ImportError: No module named CommandNotFound

Manau kad neina nieko padaryti kalta ir ši mano bėda: viewtopic.php?f=1&t=6829&p=49567#p49567

H
  • 4 Bal '11

@sirex rašė:
Tokiu atveju, gali arba rankiniu būdu nusistatyti reikiamus kelius į sys.path.

[/code]

Gal galima plačiau kaip tai padaryti saugiau neužlaužiant sistemos?

Beje čia rašo kaip isnaliuoti numpy http://www.scipy.org/Installing_SciPy/Linux
Bet naudojant:

python setup.py install --user # installs to your home directory -- requires Python >= 2.6
įrašomas numpį python 2.6 versijai

O pagal mano kuklų supratimą ši komandą:

python setup.py build
sudo python setup.py install --prefix=/usr/local # installs to /usr/local

Ar galima padaryti veikiantį tokį variantą kad modulis būtų įašytas į python 2.7 direktoriją gauti veikiantį pilnai modulį?

H
  • 5 Bal '11

Bandžiau easy_install na jis įsirašė sėkmingai, bet bandant

sudo easy_install numpy
``` nieko nesigauna

ImportError: No module named numpy.distutils
```

S
  • 7 Bal '11

Programuojant python'u Linux'uose geriausia naudoti tą python versiją, kuri yra pateikiama su distribucija. Tada darbas vyks labai sklandžiai ir paprastai.

Bet jei vis tik yra poreikis naudoti kitą python versiją, tada geriausias variantas susikompiliuoti python pačiam. Yra daug variantų, kaip susikompiliuoti ir naudoti sukompiliuotą python versiją, bet manau geriausias variantas naudoti buildout sistemą.

Buildout sistema iš pirmo žvilgsnio atrodo gan sudėtinga, bet išmokus ja naudotis, atkrenta labai daug problemų, su kuriomis susiduria python programuotojai.

Kad būtų paprasčiau paruošiau buildout aplinką, kurioje yra sukonfigūruotas python27, kuris bus automatiškai parsiųstas ir sukompiliuotas, kartu su visomis jo priklausomybėmis.

Buildout aplinką prisegu.

Naudojimo instrukcijos:

wget 'http://www.ubuntu.lt/forum/download/file.php?mode=view&id=186&sid=2feef28d79cfb36351737603e07cadf1' -O buildout-python27.tar.gz
tar -xzf buildout-python27.tar.gz
cd buildout-python27
sudo apt-get build-dep python-numpy
make
bin/myscript

Paskutinė komanda išveda tai:

Python version: 2.7.1 (r271:86832, Apr  7 2011, 09:59:05) 
[GCC 4.4.5]
NumPy version: 1.5.1
NumPy in action: 3.141593

Failai ir katalogai, kuriuos reikėtų prisitaikyti savo poreikiams:
buildout.cfg - pagrindinis buildout konfigas
myproject - testinis projektas, būtent šioje vietoje ir reikia rašyti savo python kodą.

Dirbant su skirtingomis python versijomis, jokiu būdų nieko nereikia įdieginėti į sistemą, geriau susikurti tam reikalui skirtą katalogą ir dirbti jame, naudojant automatizuotas build sistemas, tokias kaip buildout.

H
  • 7 Bal '11

Dėkui labai už išsamu paaiškinimą reiks bandyti..