focal (2) uselib.2.gz

Provided by: manpages-fr-dev_3.65d1p1-1_all bug

NOM

       uselib - Sélectionner une bibliothèque partagée

SYNOPSIS

       #include <unistd.h>

       int uselib(const char *library);

DESCRIPTION

       L'appel  système  uselib() permet de charger une bibliothèque partagée qui sera utilisée par le processus
       appelant. Il prend un chemin de fichier comme argument. L'adresse où charger la bibliothèque est  trouvée
       dans la bibliothèque elle-même. La bibliothèque peut avoir n'importe quel format de binaire reconnu.

VALEUR RENVOYÉE

       S'il réussit, cet appel système renvoie 0. S'il échoue, il renvoie -1 et remplit errno en conséquence.

ERREURS

       En  plus  de  toutes  les  erreurs  déclenchées  par open(2) et mmap(2), les erreurs suivantes peuvent se
       produire :

       EACCES La bibliothèque indiquée par library n'est pas accessible en lecture ou en écriture, ou l'appelant
              n'a  pas  la  permission  de  parcours  pour  l'un  des  répertoires  du  chemin. (Consultez aussi
              path_resolution(7).)

       ENFILE La limite du nombre total de fichiers ouverts sur le système a été atteinte.

       ENOEXEC
              Le fichier décrit par library n'est pas un exécutable de type connu (par exemple n'a  pas  le  bon
              nombre magique).

CONFORMITÉ

       uselib()  est  spécifique  à  Linux  et  ne  devrait pas être employé dans des programmes destinés à être
       portables.

NOTES

       uselib() était utilisé  par  le  code  de  démarrage  d'anciennes  versions  de  libc  pour  charger  les
       bibliothèques partagées dont les noms se trouvaient dans un tableau dans le binaire.

       Depuis libc 4.3.2, le code de démarrage essaie de préfixer ces noms avec "/usr/lib", "/lib" puis "" avant
       d'abandonner. À partir de la libc 4.3.4, ces noms sont recherchés dans les  répertoires  listés  dans  la
       variable  LD_LIBRARY_PATH,  et  les  préfixes  "/usr/lib",  "/lib"  et  "/"  sont  essayés  ensuite si la
       bibliothèque n'a pas été trouvée.

       À partir de la libc 4.4.4, seule la bibliothèque « /lib/ld.so » est chargée, afin que cette  bibliothèque
       dynamique  puisse  charger  les  autres  bibliothèques requises (à nouveau avec cette fonction). Ceci est
       également valable pour libc5.

       glibc2 n'utilise pas cette fonction.

VOIR AUSSI

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

COLOPHON

       Cette page fait partie de la publication 3.65 du projet man-pages Linux. Une description du projet et des
       instructions     pour     signaler     des     anomalies    peuvent    être    trouvées    à    l'adresse
       http://www.kernel.org/doc/man-pages/.

TRADUCTION

       Depuis 2010, cette traduction est maintenue à l'aide de l'outil po4a <http://po4a.alioth.debian.org/> par
       l'équipe de traduction francophone au sein du projet perkamon <http://perkamon.alioth.debian.org/>.

       Christophe       Blaess       <http://www.blaess.fr/christophe/>      (1996-2003),      Alain      Portal
       <http://manpagesfr.free.fr/> (2003-2006).  Julien  Cristau  et  l'équipe  francophone  de  traduction  de
       Debian (2006-2009).

       Veuillez  signaler  toute erreur de traduction en écrivant à <debian-l10n-french@lists.debian.org> ou par
       un rapport de bogue sur le paquet manpages-fr.

       Vous pouvez toujours avoir accès à la version anglaise de ce document en utilisant la commande « man -L C
       <section> <page_de_man> ».