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

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Qt Discussion :

compilation sous visual studio


Sujet :

Qt

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    164
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 164
    Points : 161
    Points
    161
    Par défaut compilation sous visual studio
    salut, j'utilise Visual Studio 2008 pour créer un programme avec Qt, j'ai installé la dernière version (4.4.3) et je suis partie sur la base d'une solution fournie en exemple. Le projet comporte un main ainsi qu'une classe définie dans un .h et un .cpp et un fichier généré par le moc, lorsque je compile tout marche bien (j'ai placé les bons include / et lib dans les propriétés du projet) tant que je ne modifie que mon .cpp .

    Or quand je rajoute une classe (.h et .cpp) et compile, aucun fichier moc supplémentaire n'est créé (alors que ça devrait etre le cas puisque ma classe utilise des objets Qt), j'ai donc des erreurs de link ...

    ma question est comment installé convenablement le moc pour qu'il me génère bien des fichiers lors de l'ajout de nouvelles classes utilisant Qt ?

    merci

  2. #2
    yan
    yan est déconnecté
    Rédacteur
    Avatar de yan
    Homme Profil pro
    Ingénieur expert
    Inscrit en
    Mars 2004
    Messages
    10 033
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur expert
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2004
    Messages : 10 033
    Points : 13 968
    Points
    13 968
    Par défaut
    Le plus simple pour moi,
    est d'utiliser qmake et un .pro pour générer ton projet visual.
    Pour générer le vcjproj il faut faire :
    qmake -tp vc

  3. #3
    Membre éprouvé

    Profil pro
    Inscrit en
    Mai 2007
    Messages
    774
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Finistère (Bretagne)

    Informations forums :
    Inscription : Mai 2007
    Messages : 774
    Points : 969
    Points
    969
    Par défaut
    N'aurais tu pas oublié d'ajouter les noms des nouveaux fichiers dans le .pro de ton projet ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    HEADERS += monHeader.h
    SOURCES += monSource.cpp
    Et en fait, comme l'a dit MonGaulois, sans même forcément créer le vcproj, tu n'as jamais à appeler moc. Tu appeles qmake qui génère le Makefile à partir du .pro, puis nmake, qui va lire le makefile, et l'exécuter (et entre autre appeler moc, le compilateur et le linker).

    G.
    Un problème avec Qt ? Vous trouverez votre réponse ici : http://doc.trolltech.com/4.6/overviews.html
    En français (traduction réalisée par l'équipe Qt de DVP) : http://qt.developpez.com/doc/4.6/vues-d-ensemble/

  4. #4
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    164
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 164
    Points : 161
    Points
    161
    Par défaut
    merci pour vos réponses, seulement votre méthode est une compilation "manuelle" passer par la fenetre de commande etc
    or je cherchais à automatiser tout ça en ayant juste à cliquer sur compiler dans visual ...

    j'ai fini par trouver une solution mais qui passe par la génération du fichier moc en manuel :
    -mettre le .h nécessitant une génération d'un moc dans le dossier bin du repertoire de Qt
    -ouvrir la fenetre de commande et taper : moc nomfichier.h -o moc_nomfichier.cpp
    -ajouter le fichier généré dans le repertoire tmp/moc/debug_shared du projet et l'ajouter dans le filtre "generated files" du projet

    par la suite le compilo de visual "comprend" qu'il faut appeler le moc à chaque modif du header en question

    merci en tout cas
    a+

  5. #5
    yan
    yan est déconnecté
    Rédacteur
    Avatar de yan
    Homme Profil pro
    Ingénieur expert
    Inscrit en
    Mars 2004
    Messages
    10 033
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur expert
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2004
    Messages : 10 033
    Points : 13 968
    Points
    13 968
    Par défaut
    Citation Envoyé par atomicJo Voir le message
    merci pour vos réponses, seulement votre méthode est une compilation "manuelle" passer par la fenetre de commande etc
    or je cherchais à automatiser tout ça en ayant juste à cliquer sur compiler dans visual ...
    Alors utilise
    qmake -tp vc

    ca te créé ton projet pour visual. Ensuite tu compile, debugg, edite avec visual. En parallèle tu doit juste tenir à jour un .pro et réexecuter qmake -tp vc quand il faut.
    Sinon il te faut l'intégration dans visual qui est payante.

  6. #6
    Membre éprouvé

    Profil pro
    Inscrit en
    Mai 2007
    Messages
    774
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Finistère (Bretagne)

    Informations forums :
    Inscription : Mai 2007
    Messages : 774
    Points : 969
    Points
    969
    Par défaut
    or je cherchais à automatiser tout ça en ayant juste à cliquer sur compiler dans visual ...
    j'ai fini par trouver une solution mais qui passe par la génération du fichier moc en manuel :
    -mettre le .h nécessitant une génération d'un moc dans le dossier bin du repertoire de Qt
    -ouvrir la fenetre de commande et taper : moc nomfichier.h -o moc_nomfichier.cpp
    -ajouter le fichier généré dans le repertoire tmp/moc/debug_shared du projet et l'ajouter dans le filtre "generated files" du projet
    Tu trouves ta solution plus simple ?
    Chez moi ça marche en cliquant juste sur "compiler". Il suffit de créer des projets "Makefile" avec Visual, et dans les commandes de compilations, tu mets "qmake && nmake -f Makefile.Debug" pour le debug, et "qmake && nmake -f Makefile.Release" pour le release.

    Ensuite tu as juste à ajouter les noms de tes fichiers dans le .pro, quand tu en crées un, et ça roule.

    Essaie nos solutions, après tu pourras juger de celel qui te convient le mieux .
    G.
    Un problème avec Qt ? Vous trouverez votre réponse ici : http://doc.trolltech.com/4.6/overviews.html
    En français (traduction réalisée par l'équipe Qt de DVP) : http://qt.developpez.com/doc/4.6/vues-d-ensemble/

  7. #7
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    164
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 164
    Points : 161
    Points
    161
    Par défaut
    merci pour vos réponses, c'est bien ces commandes de compilation que je cherchais pour pouvoir automatiser le tout sous Visual et du coup oui là c'est plus simple !

  8. #8
    Nouveau membre du Club
    Inscrit en
    Août 2008
    Messages
    25
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 25
    Points : 28
    Points
    28
    Par défaut Qt et VS2008: how to en anglais
    maitrises tu l´anglais?
    J´ai rédigé quelques notes concernant l´utilisation de Qt4.4.1 avec VS2008 lors de ma prise en main de ces outils dans lesquelles tu pourrait trouver la solution à tes soucis.
    Si oui, je suis prêt à te les faire parvenir par MP.

  9. #9
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    164
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 164
    Points : 161
    Points
    161
    Par défaut
    oui pas de souci avec l'anglais, mais la solution que l'on m'a indiqué n'est-elle pas la plus simple (avec la version open de Qt) ?
    je suis preneur si ça peut m'éclairer davantage

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Compilation sous Visual Studio 2008
    Par doukha dans le forum Qwt
    Réponses: 5
    Dernier message: 26/02/2010, 16h05
  2. Compilation sous Visual Studio 2008 : erreur QtBuild
    Par jackk dans le forum Débuter
    Réponses: 1
    Dernier message: 20/01/2010, 12h46
  3. problème de compilation sous Visual Studio 2008
    Par bmoumen27 dans le forum Visual Studio
    Réponses: 2
    Dernier message: 13/12/2009, 14h54
  4. plus rien ne compile sous visual studio 2005
    Par pascale_92 dans le forum Visual C++
    Réponses: 2
    Dernier message: 02/11/2007, 09h36
  5. Réponses: 6
    Dernier message: 08/12/2006, 14h59

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo