Provided by: manpages-it_3.73-2_all bug

NOME

       uselib - seleziona una libreria condivisa

SINTASSI

       #include <unistd.h>

       int uselib(const char *library);

DESCRIZIONE

       La  chiamata  di  sistema  uselib() serve per caricare una libreria condivisa che sarà usata dal processo
       chiamante. Viene dato un nome di percorso. L'indirizzo da cui caricare si trova nella stessa libreria. La
       libreria può avere qualunque formato binario riconosciuto.

VALORI RESTITUITI

       In caso di esito positivo viene restituito zero. In caso di errore -1 e errno è impostato di conseguenza.

ERRORI

       In aggiunta a tutti i codici di errore restituiti da open(2) e mmap(2), possono essere restituiti anche i
       seguenti:

       EACCES La libreria specificata da library non ha permessi in lettura o esecuzione, o il chiamante non  ha
              permessi di ricerca per una delle directory nel percorso (vedere anche path_resolution(7)).

       ENFILE E' stato raggiunto il limite di sistema sul numero totale di file aperti.

       ENOEXEC
              Il  file  specificato  da  library  non  è un eseguibile o un tipo conosciuto, es., non ha i magic
              number corretti.

CONFORME A

       uselib() è specifico di Linux, e non deve essere usato in programmi pensati per essere portabili.

NOTE

       uselib() fu usata dai primi codici di avvio di libc per caricare le librerie condivise con  nomi  trovati
       in un array di nomi nel binario.

       A partire da libc 4.3.2, il codice di avvio prova a anteporre a questi nomi "/usr/lib", "/lib" e "" prima
       di  rinunciare.  In  libc  4.3.4  e  successive  questi  nomi  sono  cercati  nelle  directory trovate in
       LD_LIBRARY_PATH, e, se non si trovano lì, vengono provati i prefissi "/usr/lib", "/lib" e "/".

       A partire da libc 4.4.4 viene caricata solo la libreria "/lib/ld.so", così che la libreria dinamica possa
       caricare le restanti librerie necessarie (usando di nuovo questa  chiamata).  Questo  è  anche  lo  stato
       dell'arte in libc5.

       glibc2 non usa questa chiamata.

VEDERE ANCHE

       ar(1), gcc(1), ld(1), ldd(1), mmap(2), open(2), dlopen(3), capabilities(7), ld.so(8)

COLOPHON

       Questa  pagina  fa parte del rilascio 3.73 del progetto Linux man-pages. Una descrizione del progetto, le
       istruzioni per la  segnalazione  degli  errori,  e  l'ultima  versione  di  questa  pagina  si  trova  su
       http://www.kernel.org/doc/man-pages/.

       La  versione  italiana  fa  parte  del  pacchetto  man-pages-it  v.  3.73, a cura di: ILDP "Italian Linux
       Documentation Project" http://www.pluto.it/ildp
       Per la traduzione in italiano si può fare riferimento a http://www.pluto.it/ildp/collaborare/
       Segnalare eventuali errori di traduzione a ildp@pluto.it

Linux                                              2005-01-09                                          USELIB(2)