Newsgroup: it.comp.os.linux.iniziare
Titolo: avere /bin nel tuo PATH. Che vor di' ?

Ciao a tutti,
qualcuno puo' spiegarmi cosa vuol dire: assicurati di avere /bin nel tuo 
PATH come descritto sotto. (Sto cercanda di installare xine e al 
./configure mi da' errore perche' non trova xine-lib, nella faq e' 
descritto proprio questo problema).
-------------------------------------
se hai installato xine-lib in un prefisso non-standard, assicurati
di avere /bin nel tuo PATH e che il tuo linker trovi le librerie
in /libs; con bash puoi usare qualcosa come
# export PATH="/bin:$PATH"
# export LD_LIBRARY_PATH="/lib:$LD_LIBRARY_PATH"
per essere sicuro che ciò funzioni.
------------------------------------
No non funziona ho inserito i comandi come descritto sopra #export ecc. 
senza nemmeno sapere cosa facevo nella speranza di riuscire, ma niente!
-- 
Libero come il Mare
L   I   N   U   X

 PATH come descritto sotto.
echo $PATH 
deve tornarti qualche cosa che contiene :/bin:
Davide

 senza nemmeno sapere cosa facevo nella speranza di riuscire, ma niente!
Ciao p3,
   quando vuoi eseguire un programma hai due scelte:
1) dai il nome completo del programma
2) scrivi solo il nome del programma e il sistema lo cerca
Supponiamo di avere il programma /bin/ls. Per eseguirlo puoi fare:
$ /bin/ls
$ cd /bin; ./ls
Qui esegui il programma direttamente.
$ ls
Qui non dici dove e` il programma "ls". Ma il sistema lo esegue
comunque. Il modo con cui il sistema trova il programma "ls" e`
di usare la variabile di shell che si chiama PATH. Questa variabile
contiene una lista di directories. Quando scrivi un comando senza
dare il path completo, il sistema cerca su tutte le directories del
PATH fino a quando trova un immagine col nome giusto oppure finisce
la lista.
Per vedere dove e` un camndo, puoi chiederlo al sistema:
$ which ls
/bin/ls
Di solito la variabile PATH contiene /bin, /usr/bin, /usr/X11/bin. E`
anche possibile aggiungere ".", in quel caso basta essere nella
directory dove e` l'immagine per eseguirla.
Per vedere il contenuto della variabile, il comando piu'
semplice e`:
$ echo $PATH
Ora, la variabile PATH dipende dall'utilizzatore e dalle shell.
Root, ad esempio, non dovrebbe MAI avere "." nel PATH (problemi di
sicurezza). Altri utilizzatori potrebbero avere dei PATH piu'
elaborati a seconda del tipo di attivita`.
Un discorso simile per LD_LIBRARY_PATH, solo che qui stiamo parlando
delle librerie dinamiche richieste dal programma che uno vuole girare.
Il modo di vedere queste librerie e la loro locazione e` semplice:
$ ldd /bin/ls
        libtermcap.so.2 => /lib/libtermcap.so.2 (0x40026000)
        libc.so.6 => /lib/i686/libc.so.6 (0x4002a000)
        /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
Qui abbiamo il comando /bin/ls che ha bisogno di tre librerie, tutte
trovate nel LD_LIBRARY_PATH.
Per il tuo problema, devi verificare se xine-lib (spero che sia questo
il comando che cerchi) e` installato nel tuo path:
$ which xine-lib
(in tutti i miei esempi, il "$" iniziale corrisponde al tuo prompt. Non
lo aggiungere ai tuoi comandi).
Il which di cui sopra dovrebbe dirti dove e` il comando xine-lib (dovrebbe
essere in /bin). Se non funge, fai:
$ export PATH="/bin:$PATH"
$ which xine-lib
Questo deve funzionare.
Per le librerie:
$ ldd /bin/xine-lib
E vedi se ti dice che trova tutte le librerie. Se non va (ti dice qualcosa
del tipo libxyz.so => not found) allora:
$ export LD_LIBRARY_PATH="/lib:$LD_LIBRARY_PATH"
$ ldd /bin/xine-lib
Questo deve funzionare.
Se vuoi che queste modifiche siano "permanenti", allora aggiungi la/e export
al tuo file di login.
Nell'esempio di cui sopra le linee erano date come
# export ...
Questo perche` erano commenti shell. Se vuoi veramente eseguire i commandi
bisogna levare il "#" iniziale...
Ciao,
-- 
       Roberto Divia`             Love at first sight is one of the greatest
       =============             labour-saving devices the world has ever seen.
Mailbox: C02110                 CERN-European Organization for Nuclear Research
E-mail: 
Robert...@cern.ch
           CH-1211 GENEVE 23, Switzerland