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 :

Utilisation de Qt à la fois sou VS 2008 et Eclipse


Sujet :

Qt

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 14
    Points : 18
    Points
    18
    Par défaut Utilisation de Qt à la fois sou VS 2008 et Eclipse
    Bonjour à tous,

    pour certaines raisons, j'aurais besoin d'utiliser Qt à la fois sous VS 2008 Pro et sous Eclipse, mais je rencontre plusieurs problèmes, d'où ces quelques questions :

    - à quoi sert exactement le processus de recompilation de Qt pour VS ?
    - une fois Qt compilé pour VS, peut-on l'utiliser aussi sous Eclipse ou faut-il deux installations distinctes (une pour chaque IDE) ?

    Merci d'avance !
    Grégory

  2. #2
    Responsable Qt & Livres


    Avatar de dourouc05
    Homme Profil pro
    Ingénieur de recherche
    Inscrit en
    Août 2008
    Messages
    26 619
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur de recherche
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2008
    Messages : 26 619
    Points : 188 594
    Points
    188 594
    Par défaut
    VS et Eclipse n'utilisent pas du tout le même compilateur : le premier, c'est Visual C++, le second, c'est GCC.

    Les deux n'ont pas du tout les mêmes formats pour les librairies (fichiers .lib ou .a), qui sont donc incompatibles. Il te faut donc deux installations séparées de Qt pour les deux compilateurs.

    Avec Qt compilé pour VS, tu peux obtenir les librairies pour GCC (voir ici : http://tcuvelier.developpez.com/cros...age=divers#LVI), sauf si elles sont statiques (là, ça ne marche plus du tout). Le convertisseur ne marche pas à tous les coups pour les librairies dynamiques...

    Le processus de compilation de Qt pour VS sert à pouvoir l'utiliser avec VS : Qt n'est pas constitué de petits éléments qui peuvent tenir dans des entêtes, il est quand même plus gros que ça. C'est pour ça qu'il y a tant de .cpp de sources. La compilation permet de ne pas inclure ces .cpp dans les sources de ton projet (simplification de la maintenance, résolution de problèmes de licence...).
    Vous souhaitez participer aux rubriques Qt (tutoriels, FAQ, traductions) ou HPC ? Contactez-moi par MP.

    Créer des applications graphiques en Python avec PyQt5
    Créer des applications avec Qt 5.

    Pas de question d'ordre technique par MP !

  3. #3
    Responsable Qt & Livres


    Avatar de dourouc05
    Homme Profil pro
    Ingénieur de recherche
    Inscrit en
    Août 2008
    Messages
    26 619
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur de recherche
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2008
    Messages : 26 619
    Points : 188 594
    Points
    188 594
    Par défaut
    Citation Envoyé par Fabllot
    Le point le plus sensible concerne les bibliothèques .lib & .a. Je te cite :
    Les deux n'ont pas du tout les mêmes formats pour les librairies (fichiers .lib ou .a), qui sont donc incompatibles. Il te faut donc deux installations séparées de Qt pour les deux compilateurs.
    Il me semble que les fichiers .a sont des fichiers spécifiques pour les systèmes Unix. Les fichiers correspondants sous Windows sont les .lib. Ces fichiers ne sont donc pas différents en raison de leur compilateur mais de leur plateforme...
    (Bien qu'en pratique l'extension ne serve pas à grand chose...)
    De ce fait, il me semble qu'un fichier .lib compilé par Visual doit pouvoir être utilisé par Gcc (pour windows) pour générer un binaire pour Windows...
    Un fichier .lib correspond à Visual Studio et à Intel C++ pour Windows. Le format est réservé, non seulement à Windows, mais au compilateur VC (et aux compilateurs binairement compatibles, comme ICC), et à aucun autre. Un fichier .a correspond à GCC, et à tous les compilateurs compatibles (souvent dérivés de GCC pour UNIX propriétaires), et à aucun autre.

    Les deux compilateurs ne sont pas binairement compatibles : ils n'utilisent pas le même analyseur lexical, pas le même compilateur (de la grammaire vers l'assembleur), et ne produisent donc pas du tout le même exécutable au final. Comment pourraient-ils se partager des librairies (qui ne sont que des exécutables sans main) ? Cela est impossible, sauf si l'on convertit les fichiers pour passer de l'un à l'autre.

    Si tu as associé .a à UNIX, c'est parce que GCC est issu de ce monde, et n'a jamais été prévu pour fonctionner sur Windows (ni même pour savoir que ce concurrent puisse exister). Tandis que VS n'est utilisable que sous Windows, d'où la confusion.

    Voir le format de fichier .lib :
    http://www.wotsit.org/download.asp?f=lib&sc=296573182
    .a (il s'agit d'une implémentation made by HP, c'est le format des binaires exécutables, assez proche de celui des librairies d'import) :
    http://www.wotsit.org/download.asp?f=a_out&sc=296573260

    Citation Envoyé par Fabllot
    J'aimerais bien que tu me transmettent tes sources sur lesquels tu t'es basé pour ton article, afin de compléter mes connaissances dans ce domaine...
    J'ai mis tous les articles dont je me suis servi dans les références. Le reste (la compilation de GCC), c'est une affaire d'expérience (et, donc, de mauvaises décisions, d'améliorations...).

    Tu peux quand même regarder sur Wikipedia, regarder leurs références, les lire, et essayer de les comprendre (les forums sont là pour ça, aussi).
    Vous souhaitez participer aux rubriques Qt (tutoriels, FAQ, traductions) ou HPC ? Contactez-moi par MP.

    Créer des applications graphiques en Python avec PyQt5
    Créer des applications avec Qt 5.

    Pas de question d'ordre technique par MP !

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

Discussions similaires

  1. utilisation de qt sous visual studio express 2008
    Par Nehmé dans le forum Débuter
    Réponses: 5
    Dernier message: 26/02/2009, 01h21
  2. Réponses: 0
    Dernier message: 13/02/2009, 01h44
  3. Réponses: 4
    Dernier message: 06/06/2008, 10h56
  4. utiliser deux connexions à la fois
    Par elghadi_mohamed dans le forum Windows XP
    Réponses: 2
    Dernier message: 17/01/2008, 11h21

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