2009-07-21 6 views
37

Ma question est très basique, comme je le sais actuellement. Je suis un utilisateur de longue date de Linux, mais je n'ai que récemment pris un intérêt majeur pour la programmation. Je vois que de nombreuses applications populaires dans les dépôts Ubuntu ont des paquets -dev (par exemple pidgin-dev en plus de pidgin). Ma question est la suivante:Que contiennent réellement les packages * -dev dans les référentiels de packages Linux?

Qu'est-ce que ces paquets contiennent? Comment puis-téléchargement pidgin-dev aider à développer pour Pidgin? Est-ce aussi simple qu'une vérification des dépendances pour les outils nécessaires à la création des plugins pour l'application donnée?

J'espérais qu'il y aurait une quantité importante de documentation dans les paquets -dev, mais si c'est le cas, je ne sais pas comment y accéder. Je pense à quelque chose comme une page de manuel, mais utile pour l'édition de code.

Tous les conseils sont les bienvenus!

Répondre

25

Les packages *-dev contiennent le plus souvent les en-têtes liés à l'interface d'une bibliothèque. Les plus courants sont les fichiers package-config (*.pc) décrivant les options de construction et les bibliothèques liées statiquement.

En général, si vous voulez connaître le contenu d'un paquetage que vous avez installé, dpkg -L pkgname vous le permettra. Le programme apt-file peut vous dire la même chose pour n'importe quel paquet dans les dépôts. Notez également que les réponses de William Pursell et de caf contiennent des détails supplémentaires utiles. Si vous trouvez que leur contribution est utile, faites-en la promotion.

+0

Si vous voulez connaître le contenu sans l'installer, vous pouvez également utiliser apt-get download, puis dpkg-deb -c – Jeff

+0

@Jeff La manière la plus simple de faire cela est avec apt-file list packagename'. – Novelocrat

14

Les packages -dev contiennent généralement des fichiers d'en-tête C et des versions statiquement compilées de fichiers de bibliothèque (extension .a). Parfois, ils contiennent des documents et des exemples supplémentaires, ou même des applications auxiliaires.

0

Ce package contient les en-têtes et autres fichiers de développement non inclus dans le package principal pidgin. Installez -dev si vous souhaitez compiler vos propres plugins.

18

(disclaimer: je suis familier avec Debian mais pas Ubuntu, si bien qu'il est presque certain que tout ce que j'écris applique ci-dessous, il y a une chance que c'est pas.)

Un autre élément dans la * -dev package est le lien/usr/lib/lib * .so. Le paquet libfoo0 va installer le fichier /usr/lib/libfoo.so.0.0, tandis que libfoo-dev installe les liens /usr/lib/libfoo.so.0 et /usr/lib/libfoo.so. C'est le mécanisme qui vous permet d'avoir libfoo0 et libfoo1 installés simultanément, de sorte que le logiciel nécessitant l'ancienne bibliothèque puisse coexister sur la boîte avec un logiciel utilisant la nouvelle bibliothèque. Lorsque vous installez libfoo-dev, tout logiciel compilé suivra le lien * .so et sera lié à la version de la bibliothèque référencée par ce lien.

Questions connexes