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