IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

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 

 
OuvrirSommaireQt Creator
précédentsommairesuivant
 
 

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 :

 
Sélectionnez
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) :

 
Sélectionnez
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) :

 
Sélectionnez
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 :

SDL2
Sélectionnez
LIBS += -lmingw32 -lSDL2main -lSDL2
SFML
Sélectionnez
LIBS += -lsfml-graphics -lsfml-window -lsfml-system
OpenCV
Sélectionnez
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 :

 
Sélectionnez
static {
    # Ajout des fichiers avec un « s »
} else {
    # Ajout des fichiers sans « s »
}

et

 
Sélectionnez
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 : Image non disponible ⇒ « Run ».

À voir également

Créé le 13 décembre 2017  par Winjerome

Il vous suffit d'ajouter cette ligne dans votre .pro :

 
Sélectionnez
CONFIG += C++11
# ou
CONFIG += C++14

ou encore

 
Sélectionnez
QMAKE_CXXFLAGS += -std=c++11
# ou
QMAKE_CXXFLAGS += -std=c++14

puis d'exécuter qmake.

À voir également

Créé le 13 décembre 2017  par Winjerome

Il vous suffit d'ajouter cette ligne dans votre .pro :

 
Sélectionnez
QMAKE_CXXFLAGS += -Wall -Wextra

puis d'exécuter qmake.

À voir également

Créé le 13 décembre 2017  par Winjerome
précédentsommairesuivant
 
 

Les sources présentées sur cette page sont libres de droits et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation constitue une œuvre intellectuelle protégée par les droits d'auteur. Copyright © 2020 Winjerome. Aucune reproduction, même partielle, ne peut être faite de ce site ni de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.