Bibliothèque standard et édition de liens

L'auteur de ce sujet a trouvé une solution à son problème.
Auteur du sujet

Bonjour,

j'aurais plusieurs questions à ce sujet.

  1. Où puis-je trouver les fichiers .a ou .so nécessaire à l'édition de liens dans le répertoire Linux pour la bibliothèque standard ? /lib et /usr/lib ? Quelle différence entre les deux ? /usr/lib contient les bibliothèques installées ?
  2. Ces répertoires sont-ils regardés par défaut par ld lors de l'édition des liens ?
  3. ld est-il appelé automatiquement lorsqu'on compile avec gcc avec l'option -o par exemple ?
  4. Puis-je trouver des versions en code source des ces bibliothèques ?

Merci !

+0 -0
Staff

Où puis-je trouver les fichiers .a ou .so nécessaire à l'édition de liens dans le répertoire Linux pour la bibliothèque standard ?

Dans /lib#, /usr/lib#, /usr/local/lib#, où # peut être rien, 32, 64 voir x32 (donc j'imagine x64 aussi).

Quelle différence entre les deux ?

Voir la FHS :

The /lib directory contains those shared library images needed to boot the system and run the commands in the root filesystem, ie. by binaries in /bin and /sbin.

/usr/lib includes object files, libraries, and internal binaries that are not intended to be executed directly by users or shell scripts.

/usr/lib<qual> performs the same role as /usr/lib for an alternate binary format

Filesystem Hierarchy Standard.

Ces répertoires sont-ils regardés par défaut par ld lors de l'édition des liens ?

/lib# et /usr/lib#, oui. /usr/local/lib# pas toujours.

ld est-il appelé automatiquement lorsqu'on compile avec gcc avec l'option -o par exemple ?

Oui.

Puis-je trouver des versions en code source des ces bibliothèques ?

Oui si les bibliothèques sont libres. Ce qui doit être le cas de la quasi-totalité de celles sur un système Linux nouvellement installé.

Hier, dans le parc, j'ai vu une petite vieille entourée de dinosaures aviens. Je donne pas cher de sa peau.

+0 -0

Voir la FHS :

The /lib directory contains those shared library images needed to boot the system and run the commands in the root filesystem, ie. by binaries in /bin and /sbin.

/usr/lib includes object files, libraries, and internal binaries that are not intended to be executed directly by users or shell scripts.

/usr/lib<qual> performs the same role as /usr/lib for an alternate binary format

Filesystem Hierarchy Standard.

Gabbro

Notons que pour de nombreuses distributions comme Fedora, /lib est un lien symbolique vers /usr/lib aujourd'hui.

Amateur de Logiciel Libre et de la distribution GNU/Linux Fedora.

+0 -0
Vous devez être connecté pour pouvoir poster un message.
Connexion

Pas encore inscrit ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte