FAQ Qt 5 et erreurs courantes

FAQ Qt 5 et erreurs courantesConsultez toutes les FAQ
Nombre d'auteurs : 1, nombre de questions : 16, dernière mise à jour : 6 février 2022

Quel que soit le dossier où vous avez (compilé et) installé la bibliothèque en question, vous devrez ajouter les lignes suivantes dans votre .pro :
INCLUDEPATH
+= chemin/vers/dossier/include
Cette ligne permet d'ajouter ce dossier « include » aux dossiers que parcours votre compilateur pour trouver les fichiers d'entête .h qui sont #include
. Si vous obtenez une erreur « No such file or directory », c'est cette ligne qu'il faut reconsidérer/ajouter.
Ensuite (-
L suivi sans espace du chemin du dossier) :
LIBS
+= -Lchemin/vers/dossier/lib
Cette ligne permet d'ajouter ce dossier « lib » aux dossiers que parcours votre éditeur de liens (linker) pour trouver les fichiers de code compilé (.a/.so/.lib) de la bibliothèque. Si vous obtenez une erreur « cannot find -l<fichier> », c'est cette ligne qu'il faut reconsidérer/ajouter.
Puis (-l L minuscule, suivi sans espace du nom du fichier, sans extension, ni « lib » devant) :
LIBS
+= -lfichier1 -lfichier2 … -lfichierN
Cette ligne permet de spécifier les fichiers de code compilé (.a/.so/.lib) de la bibliothèque à utiliser. Si vous obtenez des erreurs « undefined reference to » mentionnant des fonctions de la bibliothèque, c'est que vous avez oublié d'ajouter certains fichiers de la bibliothèque.
Pour cette dernière ligne, on peut citer quelques exemples de bibliothèques courantes :
LIBS
+= -lmingw32 -lSDL2main -lSDL2
LIBS
+= -lsfml-graphics -lsfml-window -lsfml-system
LIBS
+= -lopencv_core2410 -lopencv_highgui2410 -lopencv_imgproc2410
Remarque : on pourra retrouver plusieurs versions des fichiers de code compilé avec entre autres :
- « debug » avec un « d » à la fin de leur nom ;
- « release » sans ce « d » à la fin de leur nom ;
- « static » avec un « s » à la fin de leur nom.
Vous pourrez alors adapter votre .pro en utilisant les sélecteurs suivants :
static
{
# Ajout des fichiers avec un « s »
} else
{
# Ajout des fichiers sans « s »
}
et
CONFIG
(
debug, debug|release) {
# Ajout des fichiers avec un « d »
} else
{
# Ajout des fichiers sans « d »
}
Il vous suffira alors de sélectionner la bonne configuration à lancer.
Enfin, sous Windows, n'oubliez pas de copiez les fichiers .dll dans le dossier d'exécution. Par défaut sous Qt Creator, il ne s'agit ni du dossier racine de votre projet, ni du dossier où est placé l'exécutable. Votre exécutable est lancé à partir des dossiers parents build-[…]-(Debug/Release). Veillez donc à placer les fichiers .dll correspondants dans ces dossiers, ou à modifier le « Working directory » dans les propriétés de votre projet : ⇒ « Run ».
À voir également
Il vous suffit d'ajouter cette ligne dans votre .pro :
CONFIG
+= C++11
# ou
CONFIG
+= C++14
ou encore
QMAKE_CXXFLAGS
+= -std=c++11
# ou
QMAKE_CXXFLAGS
+= -std=c++14
puis d'exécuter qmake.
À voir également
Il vous suffit d'ajouter cette ligne dans votre .pro :
QMAKE_CXXFLAGS
+= -Wall -Wextra
puis d'exécuter qmake.
À voir également