Procedura installazione su linux
Questa directory contiene i "pacchetti" di r-gui per Linux. Entrambi sono degli archivi tar compressi. Come si intuisce dai nomi, uno contiene distribuzione "source" e l'altro una distribuzione "binary". r_gui-0.1-source.tar.gz r_gui-0.1.linux-i686-binary.tar.gz Source "Spacchettando" la distribuzione source si ottiene una directory con i sorgenti di r-gui, che possono essere eseguiti "in loco" o installati. Vediamo intanto come si "spacchetta" e cosa si ottiene: asterix:/tmp/source> ls -lugo total 196 -rw-r--r-- 1 193101 2007-03-21 15:11 r_gui-0.1-source.tar.gz asterix:/tmp/source> tar zxvf r_gui-0.1-source.tar.gz r_gui-0.1/ r_gui-0.1/bin/ r_gui0.1/bin/bino-gui.py r_gui-0.1/bin/generic-gui.py r_gui-0.1/bin/media_camp-gui.py ............. r_gui-0.1/dir-content.txt r_gui-0.1/makefile r_gui-0.1/r-gui_post_install.py r_gui-0.1/setup.py r_gui-0.1/PKG-INFO asterix:/tmp/source> ls r_gui-0.1 r_gui-0.1-source.tar.gz asterix:/tmp/source> cd r_gui-0.1/ asterix:/tmp/source/r_gui-0.1> ls -lugo total 56 drwxr-xr-x 2 4096 2007-03-21 15:18 bin -rw-r--r-- 1 15122 2007-03-21 15:18 COPYING.txt drwxr-xr-x 7 4096 2007-03-21 15:18 data -rw-r--r-- 1 1463 2007-03-21 15:18 dir-content.txt -rw-r--r-- 1 874 2007-03-21 15:18 makefile -rw-r--r-- 1 384 2007-03-21 15:18 PKG-INFO -rw-r--r-- 1 1042 2007-03-21 15:18 README.txt drwxr-xr-x 4 4096 2007-03-21 15:18 r_gui -rwxr-xr-x 1 5094 2007-03-21 15:18 r-gui_post_install.py -rw-r--r-- 1 2998 2007-03-21 15:18 setup.py asterix:/tmp/source/r_gui-0.1> ls -lugo bin/ total 32 -rwxr-xr-x 1 4197 2007-03-21 15:18 bino-gui.py -rwxr-xr-x 1 2576 2007-03-21 15:18 generic-gui.py -rwxr-xr-x 1 4122 2007-03-21 15:18 media_camp-gui.py -rwxr-xr-x 1 3436 2007-03-21 15:18 png-gui.py -rwxr-xr-x 1 4259 2007-03-21 15:18 rank-gui.py asterix:/tmp/source/r_gui-0.1> Se si prova ad eseguire uno degli script della directory bin si ottiene probabilmente un errore:: asterix:/tmp/source/r_gui-0.1> ./bin/generic-gui.py Traceback (most recent call last): File "./bin/generic-gui.py", line 55, in ? from r_gui.base.path_utils import make_module_local_path ImportError: No module named r_gui.base.path_utils Ciò dipende dal fatto che il "package" Python r_gui non è nel PATH di PYTHON. La cosa si può "aggiustare" al volo così: asterix:/tmp/source/r_gui-0.1> export PYTHONPATH=. asterix:/tmp/source/r_gui-0.1> ./bin/generic-gui.py La riga precedente dovrebbe aver lanciato con successo una delle applicazioni di r-gui. Installazione Dalla directory dei sorgenti si può anche installare con il semplice comando: asterix:/tmp/source/r_gui-0.1> python setup.py install che però installerebbe il tutto sotto /usr (cosa che richiede i permessi di root e che non voglio fare in questa "prova"). E' però possibile specificare una directory alternativa come "radice" dell'installazione. asterix:/tmp/source/r_gui-0.1> mkdir /tmp/source-deploy asterix:/tmp/source/r_gui-0.1> python setup.py install --prefix /tmp/source-deploy A questo punto ci si può spostare nella directory di deploy, settare opportunamente PYTHONPATH ed eseguire lo script:: asterix:/tmp/source/r_gui-0.1> cd /tmp/source-deploy asterix:/tmp/source-deploy> ls bin data lib asterix:/tmp/source-deploy> ls -lugo lib/python2.4/site-packages/ total 4 drwxr-xr-x 4 4096 2007-03-21 15:33 r_gui asterix:/tmp/source-deploy> export PYTHONPATH=./lib/python2.4/site-packages/ asterix:/tmp/source-deploy> ./bin/generic-gui.py Binary Spacchettando la distribuzione binaria invece...: asterix:/tmp/binary> ls -lugo total 88 -rw-r--r-- 1 84729 2007-03-21 15:09 r_gui-0.1.linux-i686-binary.tar.gz asterix:/tmp/binary> tar zxf r_gui-0.1.linux-i686-binary.tar.gz asterix:/tmp/binary> ls -lugo total 92 -rw-r--r-- 1 84729 2007-03-21 15:09 r_gui-0.1.linux-i686-binary.tar.gz drwxr-xr-x 5 4096 2007-03-21 15:39 usr asterix:/tmp/binary> ls -lugo usr/ total 12 drwxr-xr-x 2 4096 2007-03-21 15:39 bin drwxr-xr-x 7 4096 2007-03-21 15:39 data drwxr-xr-x 3 4096 2007-03-21 15:39 lib Come si vede si ottengono le stesse directory ottenute prima con l'installazione da sorgenti, e si possono quindi ripetere le operazioni analoghe: asterix:/tmp/binary> export PYTHONPATH=./usr/lib/python2.4/site-packages/ asterix:/tmp/binary> ./usr/bin/generic-gui.py