dbus – comment définir les chemins d’inclusion

Sur mon système, les en-têtes dbus sont placés dans /usr/include/dbus-1.0/dbus/ et dbus-arch-deps.h est un autre emplacement (ce qui semble étrange): /usr/lib/x86_64-linux-gnu/dbus-1.0/include/dbus/dbus-arch-deps.h Dans mon programme, /usr/lib/x86_64-linux-gnu/dbus-1.0/include/dbus/dbus-arch-deps.h #include mais dans tous les fichiers d’en-tête qui incluent d’autres chemins, cela ressemble à ceci: #include Je peux copier dbus-arch-deps.h dans /usr/include/dbus-1.0/dbus/ mais comment réparer les chemins dans les en-têtes dbus?

Pkg-config est probablement installé sur votre système.

 g++ $(pkg-config --cflags dbus-1) main.c 

Pkgconfig contient une firebase database de l’éditeur de liens / compilateur / etc. drapeaux requirejs pour utiliser des bibliothèques spécifiques. Voir man pkg-config pour plus d’informations.

Vous n’avez pas besoin de copier des fichiers.

Ajoutez simplement le chemin d’emplacement de dbus à votre chemin d’inclusion lors de la compilation à l’aide du drapeau I :

Exemple:

 g++ -Wall -I /usr/include/dbus-1.0/ -o main.o 

En utilisant l’emplacement de l’emplacement de dbus (à l’emplacement standard de /usr/include , vous pouvez référencer les fichiers comme suit dans votre code source:

 #include  

De même, si vous devez dbus lien contre dbus vous devez append ce chemin au chemin d’inclusion des bibliothèques de la manière suivante:

 g++ -Wall -I /usr/include/dbus-1.0/ -o main.o -L  

dbus library path is where the libraries of dbus`. Pour le savoir, consultez le Web ou recherchez votre système.

METTRE À JOUR:

Pour y parvenir dans Qt-Creator (que je n’ai jamais utilisé), voici peut-être une solution:

Comment append un chemin d’inclusion dans Qt Creator?

Tout d’abord, vous devez l’installer et le configurer correctement. Vous devriez essayer cette commande:

 sudo apt-get -y install dbus libdbus-1-dev libdbus-glib-1-2 libdbus-glib-1-dev 

Maintenant, voici le Makefile que vous devriez écrire pour la compilation:

 all: g++ dbus.cpp -I/usr/include/dbus-1.0 \ -I/usr/lib/x86_64-linux-gnu/dbus-1.0/include \ -I/usr/include/glib-2.0 \ -I/usr/lib/x86_64-linux-gnu/glib-2.0/include/ \ -ldbus-1 \ -ldbus-glib-1 

Maintenant, vous pouvez inclure des fichiers comme dbus / dbus.h, dbus / dbus-glib.h, etc.