#1 Le 26/01/2021, à 17:36
- DonutMan75
[RESOLU] Question dpkg-config pour compilation
Hello,
désolé de vous déranger encore avec ça mais....
Comment peut-on a priori faire le lien entre
1- le nom d'un paquet de dev qu'on installe : libglib2.0-dev
2- le nom du paquet à passer en argument à dpkg-config afin d'avoir les flags de compilation : glib-2.0
Existe-t-il une transformation canonique (virer le préfixe lib, supprimer le -dev, mettre un tiret obligatoirement entre le nom et la version) qui fonctionne à chaque fois ?
J'ai finalement trouvé la solution sur le net et je trouve ça assez frustrant...
$ sudo apt-get install libglib2.0-dev
$ dpkg-query -l "libglib*"
Souhait=inconnU/Installé/suppRimé/Purgé/H=à garder
| État=Non/Installé/fichier-Config/dépaqUeté/échec-conFig/H=semi-installé/W=attend-traitement-déclenchements
|/ Err?=(aucune)/besoin Réinstallation (État,Err: majuscule=mauvais)
||/ Nom Version Architecture Description
+++-=================================-================-============-===================================================
ii libglib-object-introspection-perl 0.047-1 amd64 Perl bindings for gobject-introspection libraries
ii libglib-perl 3:1.329-1 amd64 interface to the GLib and GObject libraries
ii libglib2.0-0:amd64 2.58.3-2+deb10u2 amd64 GLib library of C routines
un libglib2.0-0-dbg <aucune> <aucune> (aucune description n'est disponible)
ii libglib2.0-bin 2.58.3-2+deb10u2 amd64 Programs for the GLib library
ii libglib2.0-data 2.58.3-2+deb10u2 all Common files for GLib library
ii libglib2.0-dev:amd64 2.58.3-2+deb10u2 amd64 Development files for the GLib library
ii libglib2.0-dev-bin 2.58.3-2+deb10u2 amd64 Development utilities for the GLib library
ii libglib2.0-doc 2.58.3-2+deb10u2 all Documentation files for the GLib library
un libglibmm-2.4-1c2a <aucune> <aucune> (aucune description n'est disponible)
ii libglibmm-2.4-1v5:amd64 2.58.0-2 amd64 C++ wrapper for the GLib toolkit (shared libraries)
$ pkg-config --cflags --libs glib-2.0
-I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -lglib-2.0
Dernière modification par DonutMan75 (Le 27/01/2021, à 19:21)
Hors ligne
#2 Le 26/01/2021, à 19:32
- kamaris
Re : [RESOLU] Question dpkg-config pour compilation
Je dirais non, car je ne pense pas que tu aies un paquet séparé pour GIO par exemple, alors que tu as
$ pkg-config --cflags --libs gio-2.0
-I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -pthread -I/usr/include/libmount -I/usr/include/blkid -lgio-2.0 -lgobject-2.0 -lglib-2.0
$
Ce qui fait foi, c'est l'existence ou non de fichiers .pc dans les répertoires de recherche de pkg-config.
Un moyen de chercher les bons noms peut être
pkg-config --list-all | grep glib
Dernière modification par kamaris (Le 26/01/2021, à 19:35)
Hors ligne
#3 Le 27/01/2021, à 19:21
- DonutMan75
Re : [RESOLU] Question dpkg-config pour compilation
Hello kamaris,
super merci pour ton retour !
Lister les paquets via pkg-config c'est la bonne solution pour trouver le nom du .pc correspondant, bien vu !
En farfouillant un peu j'ai aussi trouvé les différents .pc utilisés par pkg-config.. dont celui qui m'intéresse !
$ more /usr/lib/x86_64-linux-gnu/pkgconfig/glib-2.0.pc
prefix=/usr
libdir=${prefix}/lib/x86_64-linux-gnu
includedir=${prefix}/include
bindir=${prefix}/bin
glib_genmarshal=${bindir}/glib-genmarshal
gobject_query=${bindir}/gobject-query
glib_mkenums=${bindir}/glib-mkenums
Name: GLib
Description: C Utility Library
Version: 2.58.3
Requires.private: libpcre >= 8.31
Libs: -L${libdir} -lglib-2.0
Libs.private: -pthread
Cflags: -I${includedir}/glib-2.0 -I${libdir}/glib-2.0/include
Merci encore pour tout
bonne soirée à tous,
D.
Hors ligne