Précédent   Forum du club des développeurs et IT Pro > C et C++ > Bibliothèques > Qt > EDI > Qt Creator
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 05/12/2012, 15h41   #1
arthurdubois
Invité régulier
 
Homme arthur
Étudiant
Inscription : mars 2012
Messages : 110
Détails du profil
Informations personnelles :
Nom : Homme arthur
Localisation : Allemagne

Informations professionnelles :
Activité : Étudiant
Secteur : Enseignement

Informations forums :
Inscription : mars 2012
Messages : 110
Points : 9
Points : 9
Par défaut Compilation d'un projet Qt

Bonsoir,

j´ai lu des tutoriels indiquants la maniere de creer un fichier executable d´un projet Qt. Je me suis inspire du lien suivant:

- qt.developpez.com/tutoriels/installer-qt-4.4.3/

J´ai suivis les directives donnees dans chaque tutoriel. Mais je n´arrive toujours pas a obtenir un fichier executable. la fenêtre Command Prompt signale des erreurs.

Je vous prie de bien vouloir m´aider.

la capture de la fenêtre Command Prompt se trouve en piece jointe.

le systeme d´exploitation de mon pc est Windows 7 et je bosse avec la version Qt SDK 1.2.1
Images attachées
Type de fichier : jpg ResumesDesCommandes.JPG (99,7 Ko, 13 affichages)
arthurdubois est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/12/2012, 22h24   #2
Troudhyl
Modérateur
 
Homme
Ingénieur développement logiciels
Inscription : mai 2009
Messages : 957
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 24
Localisation : France

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : mai 2009
Messages : 957
Points : 1 679
Points : 1 679
C'est vraiment pour Symbian que tu veux compiler ? Parce que le tutoriel que tu montres explique pour Windows. Et les erreurs sont claires, impossible de trouver ton compilateur Symbian dans le path.
Troudhyl est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/12/2012, 00h05   #3
arthurdubois
Invité régulier
 
Homme arthur
Étudiant
Inscription : mars 2012
Messages : 110
Détails du profil
Informations personnelles :
Nom : Homme arthur
Localisation : Allemagne

Informations professionnelles :
Activité : Étudiant
Secteur : Enseignement

Informations forums :
Inscription : mars 2012
Messages : 110
Points : 9
Points : 9
Je desire tout simplement creer un fichier executable. Et apparement je dois le faire avec symbian, vu que j´ai la version Qt SDK1.2.1 online. Ou dois-je me procurer le compilateur de symbian? Quel nom possede le compilateur de symbian? Dans le dossier d´installation de Qt SDK, j´ai retrouve le sous-dossier de symbian. Mais je me demande bien si c´est la que se trouve le compilateur. si oui, quel est son nom ?
Pourrais-tu m´orienter stp.
arthurdubois est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/12/2012, 09h06   #4
Troudhyl
Modérateur
 
Homme
Ingénieur développement logiciels
Inscription : mai 2009
Messages : 957
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 24
Localisation : France

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : mai 2009
Messages : 957
Points : 1 679
Points : 1 679
J'aimerais bien que tu fasses l'effort de découvrir tout seul ce qu'est Symbian et pourquoi ce n'est pas ça que tu veux, vu que j'ai posé lourdement la question. Qt est multi-plateforme et peut te fournir un exécutable pour une multitude d'OS donc, et tu dois nous dire pour commencer si c'est vraiment pour Symbian que tu cherches (auquel cas je ne pourrai pas t'aider d'ailleurs). Le SDK est un pack d'installation "tout en un" qui te permet de choisir à l'installation ce que tu as besoin, et qui propose donc plein de versions de Qt.
Troudhyl est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/12/2012, 13h31   #5
arthurdubois
Invité régulier
 
Homme arthur
Étudiant
Inscription : mars 2012
Messages : 110
Détails du profil
Informations personnelles :
Nom : Homme arthur
Localisation : Allemagne

Informations professionnelles :
Activité : Étudiant
Secteur : Enseignement

Informations forums :
Inscription : mars 2012
Messages : 110
Points : 9
Points : 9
Oh oh oh !!

Symbian OS est un systeme d´exploitation pour telephones portables et PDA. Symbian OS fournit les fonctionalites necessaires du OS, entre autre le coeur, ainsi que les API communes et une interface utilisateur de reference.

Au vue de ces explications, je n´ai pas besoin de symbian pour creer mon fichier executable. Je veux juste creer l´executable d´un projet qui ouvrira une fenêtre pour que je puisse ouvrir et lire le contenu d´un fichier texte.

J´ai copie les fichiers (QtCore.dll, QtCored4.dll, QtGui4.dll, QtGuid4.dll et QtNetworkd4.dll) a partir du dossier d´installation de QtSDK (C:\QtSDK\Desktop\Qt\4.8.1\mingw\bin) et en suite je les ai colles dans le dossier debug de mon Projet (C:\Users\jiodatsinga\Desktop\ProjectQtSDK\ReadAndSendData\debug).

J´ai ensuite compile mon code avec la fleche verte de l´IDE de Qt Creator. Ma fenetre s´ouvre normalement, mais le dossier debug de mon projet ne possede tjs pas l´executable de mon projet.
arthurdubois est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/12/2012, 13h46   #6
Troudhyl
Modérateur
 
Homme
Ingénieur développement logiciels
Inscription : mai 2009
Messages : 957
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 24
Localisation : France

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : mai 2009
Messages : 957
Points : 1 679
Points : 1 679
Tu ne veux décidément pas le dire, mais si j'ai bien compris, tu veux un exécutable pour Windows ! Bref quelque chose de classique, je vais donc pouvoir t'aider.

Effectivement c'est plus simple avec Qt Creator (d'ailleurs ici on est dans la section du forum qui est consacrée à cet IDE ). Autrement en ligne de commande il suffisait de ne pas se tromper de version de Qt (autrement dit d'exécuter le qmake d'une version desktop), et ensuite le "make" de MinGW c'est mingw32-make.

Par défaut, Qt Creator a les "shadow builds" d'activés, ce qui veut dire qu'il ne va pas créer de sous-arborescence dans ton projet (debug/release par exemple) mais qu'il va créer son dossier de build à côté. Comme tu es sous Seven, tu peux facilement savoir où se trouve ton exécutable en passant par le gestionnaire des tâches (clic droit sur le processus de ta fenêtre > Ouvrir l'emplacement du fichier). Inutile de copier les dll Qt à côté, il faudra le faire pour déployer le projet. Dans un environnement de développement, tu peux mettre C:\QtSDK\Desktop\Qt\4.8.1\mingw\bin dans le path.
Troudhyl est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/12/2012, 15h56   #7
arthurdubois
Invité régulier
 
Homme arthur
Étudiant
Inscription : mars 2012
Messages : 110
Détails du profil
Informations personnelles :
Nom : Homme arthur
Localisation : Allemagne

Informations professionnelles :
Activité : Étudiant
Secteur : Enseignement

Informations forums :
Inscription : mars 2012
Messages : 110
Points : 9
Points : 9
Exact, je desire un Executable pour Window 7.

Si j´ai bien saisis, je dois bosser avec la console intitulee: Qt 4.8.1 for Desktop (mingw) .

En suite je dois entrer les commandes suivantes:

- cd C:\Users\jiodatsinga\Desktop\ProjectQtSDK\ReadAndSendData
- C:\Users\jiodatsinga\Desktop\ProjectQtSDK\ReadAndSendData>qmake -project
- C:\Users\jiodatsinga\Desktop\ProjectQtSDK\ReadAndSendData>qmake
- C:\Users\jiodatsinga\Desktop\ProjectQtSDK\ReadAndSendData>mingw32-make

Lors de la creation de mon projet, je n´ai pas coche la case shadow build. Est-ce un probleme?

Citation:
Comme tu es sous Seven, tu peux facilement savoir où se trouve ton exécutable en passant par le gestionnaire des tâches (clic droit sur le processus de ta fenêtre > Ouvrir l'emplacement du fichier).
J´ai utlise le gestionnaire des tâches, helas l´executable ReadAndSendData.exe est introuvable!!

Citation:
Dans un environnement de développement, tu peux mettre C:\QtSDK\Desktop\Qt\4.8.1\mingw\bin dans le path.
De quel path s´agit-il ?

je suis perdu la!!
Images attachées
Type de fichier : jpg Qt 4.8.1 for Desktop (mingw).jpg (90,7 Ko, 3 affichages)
arthurdubois est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/12/2012, 16h28   #8
Troudhyl
Modérateur
 
Homme
Ingénieur développement logiciels
Inscription : mai 2009
Messages : 957
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 24
Localisation : France

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : mai 2009
Messages : 957
Points : 1 679
Points : 1 679
Bon nickel pour la ligne de commande, pour comprendre. Après c'est plus simple de continuer avec Qt Creator pour développer/compiler/debuguer...

Pour le shadow build, ce n'est pas un problème (j'espère que tu as compris à ce que ça change, active-le sinon pour comprendre), c'est juste que ça change l'endroit où est créé ton exécutable.

PATH est une variable d'environnement qui contient des chemins de dossiers. Les fichiers contenus dans ces dossiers deviennent "visibles" par tous.
Donc si tu mets le chemin des dll Qt "dans le path" (c'est à dire dans la variable d'environnement PATH), ces dll (qui sont les dépendances de tes exécutables Qt) seront visibles partout, donc plus la peine de les copier.
D'ailleurs quand tu lances une console avec le raccourci Qt 4.8.1 for Desktop (mingw), c'est ce qu'il fait, temporairement ! Sinon tu ne pourrais pas utiliser qmake.exe, mingw32-make.exe... (tu serais obligé de mettre le chemin complet, C:\QtSDK\Desktop\Qt\4.8.1\mingw\bin\qmake.exe).
Troudhyl est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/12/2012, 17h29   #9
arthurdubois
Invité régulier
 
Homme arthur
Étudiant
Inscription : mars 2012
Messages : 110
Détails du profil
Informations personnelles :
Nom : Homme arthur
Localisation : Allemagne

Informations professionnelles :
Activité : Étudiant
Secteur : Enseignement

Informations forums :
Inscription : mars 2012
Messages : 110
Points : 9
Points : 9
J´ai trouve une autre solution a mon pb.

- J´ai copie les fichiers libgcc_s_dw2-1.dll et mingwm10.dll depuis le repertoire C:\QtSDK\Desktop\Qt\4.8.0\mingw\bin

- Ensuite j´ai copie les QtCored4.dll, QtCore4.dll,QtGui4.dll,QtGuid4.dll et QtNetworkd4.dll depuis le repertoire C:\QtSDK\Desktop\Qt\4.8.1\mingw\bin

- Au final j´ai colle les fichiers .dll copies dans le dossier debug de mon projet(ReadAndSendData)

- Vu que je bosse sous Window seven, mon executable n´a pas l´extension .exe. Mon executable est ReadAndSendData tout court.

- Apres avoir effectue ces modifications, le test a ete un succes.

Cependant j´ai essaye de suivre tes consignes au niveau de la console du desktop (Mingw), mais j´ai tjs des soucis.

Je recois l´erreur suivante:l´instruction "mingw32-make"est soit mal ecrite, soit introuvable
Images attachées
Type de fichier : jpg Console Qt 4.8.1 for Desktop (Mingw)1.jpg (84,1 Ko, 2 affichages)
arthurdubois est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/12/2012, 18h21   #10
Troudhyl
Modérateur
 
Homme
Ingénieur développement logiciels
Inscription : mai 2009
Messages : 957
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 24
Localisation : France

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : mai 2009
Messages : 957
Points : 1 679
Points : 1 679
Plus haut tu utilisais Qt 4.8.1, et maintenant tu utilises la version 4.8.0 ? Il faut choisir...

Je ne connaissais pas la commande "path", le problème c'est que :
- ça ne s'applique que sur la fenêtre de commande en cours et pas au système
- comme tu l'utilises, ça écrase la valeur précédente du path. Il faudrait faire path C:\nouveau_chemin;%path%. Si tu ouvres une nouvelle fenêtre de commande et que tu tapes juste "path", tu verras qu'il y a déjà plein de chemins utiles dans sa valeur initiale.

Mais tu peux aussi modifier la variable d'environnement durablement (clic droit sur Ordinateur > propriétés > paramètres systèmes avancés > variable d'environnement, de mémoire sur Windows 7). Bon je ne vais pas te faire un cours de Windows 7.

Citation:
- Vu que je bosse sous Window seven, mon executable n´a pas l´extension .exe. Mon executable est ReadAndSendData tout court.
Euh... pas du tout Déjà tous les Windows sont pareils, ensuite c'est que Windows cache par défaut les "extensions connues" (ça se change dans les "options des dossiers", fais Alt dans l'explorateur pour afficher les menus)

Citation:
Cependant j´ai essaye de suivre tes consignes au niveau de la console du desktop (Mingw), mais j´ai tjs des soucis.
Ce sera résolu quand tu auras configuré le path correctement. A savoir, quand mingw32-make(.exe) sera effectivement accessible comme tu l'écris, sans mettre le chemin complet.
Troudhyl est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/12/2012, 21h21   #11
arthurdubois
Invité régulier
 
Homme arthur
Étudiant
Inscription : mars 2012
Messages : 110
Détails du profil
Informations personnelles :
Nom : Homme arthur
Localisation : Allemagne

Informations professionnelles :
Activité : Étudiant
Secteur : Enseignement

Informations forums :
Inscription : mars 2012
Messages : 110
Points : 9
Points : 9
J´ai configure le path et voici les infos que j´obtiens:

Citation:

Setting up environment for Qt usage...

C:\Windows\system32>path C:\QtSDK\Desktop\Qt\4.8.1\mingw\bin;%path%

C:\Windows\system32>cd C:\Users\jiodatsinga\Desktop\ProjectQtSDK\ReadAndSendData


C:\Users\jiodatsinga\Desktop\ProjectQtSDK\ReadAndSendData>qmake -project

C:\Users\jiodatsinga\Desktop\ProjectQtSDK\ReadAndSendData>qmake

C:\Users\jiodatsinga\Desktop\ProjectQtSDK\ReadAndSendData>mingw32-make
mingw32-make -f Makefile.Debug
mingw32-make[1]: Entering directory `C:/Users/jiodatsinga/Desktop/ProjectQtSDK/R
eadAndSendData'
mingw32-make[1]: Nothing to be done for `first'.
mingw32-make[1]: Leaving directory `C:/Users/jiodatsinga/Desktop/ProjectQtSDK/Re
adAndSendData'

C:\Users\jiodatsinga\Desktop\ProjectQtSDK\ReadAndSendData>
A ce niveau, la fenêtre de commande (Qt 4.8.1 for Desktop MinGW) ne signale aucune erreur.
Images attachées
Type de fichier : jpg console for Desktop.jpg (95,3 Ko, 4 affichages)
arthurdubois est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/12/2012, 09h37   #12
Troudhyl
Modérateur
 
Homme
Ingénieur développement logiciels
Inscription : mai 2009
Messages : 957
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 24
Localisation : France

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : mai 2009
Messages : 957
Points : 1 679
Points : 1 679
Je pense que comme tu as déjà compilé, si tu n'as rien modifié, il n'y a effectivement rien à faire (compilation incrémentale). Modifie une source pour voir si c'est ça.
Troudhyl est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/12/2012, 11h07   #13
arthurdubois
Invité régulier
 
Homme arthur
Étudiant
Inscription : mars 2012
Messages : 110
Détails du profil
Informations personnelles :
Nom : Homme arthur
Localisation : Allemagne

Informations professionnelles :
Activité : Étudiant
Secteur : Enseignement

Informations forums :
Inscription : mars 2012
Messages : 110
Points : 9
Points : 9
Bonjour,

t´avais vu juste. J´ai supprime le fichier executable de mon projet dans le dossier debug, ensuite j´ai modifie quelques parametres de mes fichiers sources, puis enregistrer les modifications. A l´aide de la console pour le Desktop (MinGW), j´ai effectue la compilation afin de creer le fichier executable de mon projet. Le resultat a ete un succes. Apres la compilation via la console, j´ai jete un coup d´oeil dans le dossier debug et j´ai constate que l´executable de mon projet a ete cre.

Merci pour ton aide.

Voici le resume de la console:
Citation:
Setting up environment for Qt usage...

C:\Windows\system32>path C:\QtSDK\Desktop\Qt\4.8.1\mingw\bin;%path%

C:\Windows\system32>cd C:\Users\jiodatsinga\Desktop\ProjectQtSDK\ReadAndSendData


C:\Users\jiodatsinga\Desktop\ProjectQtSDK\ReadAndSendData>qmake -project

C:\Users\jiodatsinga\Desktop\ProjectQtSDK\ReadAndSendData>qmake

C:\Users\jiodatsinga\Desktop\ProjectQtSDK\ReadAndSendData>mingw32-make
mingw32-make -f Makefile.Debug
mingw32-make[1]: Entering directory `C:/Users/jiodatsinga/Desktop/ProjectQtSDK/R
eadAndSendData'
g++ -c -g -frtti -fexceptions -mthreads -Wall -DUNICODE -DQT_LARGEFILE_SUPPORT -
DQT_DLL -DQT_GUI_LIB -DQT_CORE_LIB -DQT_HAVE_MMX -DQT_HAVE_3DNOW -DQT_HAVE_SSE -
DQT_HAVE_MMXEXT -DQT_HAVE_SSE2 -DQT_THREAD_SUPPORT -DQT_NEEDS_QMAIN -I'c:/QtSDK/
Desktop/Qt/4.8.1/mingw/include/QtCore' -I'c:/QtSDK/Desktop/Qt/4.8.1/mingw/includ
e/QtGui' -I'c:/QtSDK/Desktop/Qt/4.8.1/mingw/include' -I'.' -I'c:/QtSDK/Desktop/Q
t/4.8.1/mingw/include/ActiveQt' -I'debug' -I'c:/QtSDK/Desktop/Qt/4.8.1/mingw/mks
pecs/default' -o debug/findfile.o findfile.cpp
g++ -c -g -frtti -fexceptions -mthreads -Wall -DUNICODE -DQT_LARGEFILE_SUPPORT -
DQT_DLL -DQT_GUI_LIB -DQT_CORE_LIB -DQT_HAVE_MMX -DQT_HAVE_3DNOW -DQT_HAVE_SSE -
DQT_HAVE_MMXEXT -DQT_HAVE_SSE2 -DQT_THREAD_SUPPORT -DQT_NEEDS_QMAIN -I'c:/QtSDK/
Desktop/Qt/4.8.1/mingw/include/QtCore' -I'c:/QtSDK/Desktop/Qt/4.8.1/mingw/includ
e/QtGui' -I'c:/QtSDK/Desktop/Qt/4.8.1/mingw/include' -I'.' -I'c:/QtSDK/Desktop/Q
t/4.8.1/mingw/include/ActiveQt' -I'debug' -I'c:/QtSDK/Desktop/Qt/4.8.1/mingw/mks
pecs/default' -o debug/main.o main.cpp
In file included from main.cpp:3:
parseandsenddatatocontroller.cpp: In function 'const bool process(void*, std::st
ring)':
parseandsenddatatocontroller.cpp:96: warning: comparison between signed and unsi
gned integer expressions
C:/QtSDK/Desktop/Qt/4.8.1/mingw/bin/moc.exe -DUNICODE -DQT_LARGEFILE_SUPPORT -DQ
T_DLL -DQT_GUI_LIB -DQT_CORE_LIB -DQT_HAVE_MMX -DQT_HAVE_3DNOW -DQT_HAVE_SSE -DQ
T_HAVE_MMXEXT -DQT_HAVE_SSE2 -DQT_THREAD_SUPPORT -DQT_NEEDS_QMAIN -I'c:/QtSDK/De
sktop/Qt/4.8.1/mingw/include/QtCore' -I'c:/QtSDK/Desktop/Qt/4.8.1/mingw/include/
QtGui' -I'c:/QtSDK/Desktop/Qt/4.8.1/mingw/include' -I'.' -I'c:/QtSDK/Desktop/Qt/
4.8.1/mingw/include/ActiveQt' -I'debug' -I'c:/QtSDK/Desktop/Qt/4.8.1/mingw/mkspe
cs/default' -D__GNUC__ -DWIN32 findfile.h -o debug/moc_findfile.cpp
g++ -c -g -frtti -fexceptions -mthreads -Wall -DUNICODE -DQT_LARGEFILE_SUPPORT -
DQT_DLL -DQT_GUI_LIB -DQT_CORE_LIB -DQT_HAVE_MMX -DQT_HAVE_3DNOW -DQT_HAVE_SSE -
DQT_HAVE_MMXEXT -DQT_HAVE_SSE2 -DQT_THREAD_SUPPORT -DQT_NEEDS_QMAIN -I'c:/QtSDK/
Desktop/Qt/4.8.1/mingw/include/QtCore' -I'c:/QtSDK/Desktop/Qt/4.8.1/mingw/includ
e/QtGui' -I'c:/QtSDK/Desktop/Qt/4.8.1/mingw/include' -I'.' -I'c:/QtSDK/Desktop/Q
t/4.8.1/mingw/include/ActiveQt' -I'debug' -I'c:/QtSDK/Desktop/Qt/4.8.1/mingw/mks
pecs/default' -o debug/moc_findfile.o debug/moc_findfile.cpp
g++ -mthreads -Wl,-subsystem,windows -o debug/ReadAndSendData.exe debug/findfile
.o debug/main.o debug/moc_findfile.o -L'c:/QtSDK/Desktop/Qt/4.8.1/mingw/lib' -l
mingw32 -lqtmaind -lQtGuid4 -lQtCored4
mingw32-make[1]: Leaving directory `C:/Users/jiodatsinga/Desktop/ProjectQtSDK/Re
adAndSendData'

C:\Users\jiodatsinga\Desktop\ProjectQtSDK\ReadAndSendData>
arthurdubois est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Cette discussion est résolue.
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 12h05.


 
 
 
 
Partenaires

Hébergement Web