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

Bibliothèques Discussion :

[qt][wxwidgets] cohabitation pacifique?


Sujet :

Bibliothèques

  1. #1
    Membre éclairé Avatar de hansaplast
    Homme Profil pro
    Artisant logiciel
    Inscrit en
    Septembre 2005
    Messages
    948
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Artisant logiciel
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 948
    Points : 719
    Points
    719
    Par défaut [qt][wxwidgets] cohabitation pacifique?
    re-bonjours,

    alors, voila mon pb :

    j'ai commencé un dev avec wxwidgets.
    hors, il ne dipose pas d'une fonctionnalitée dont j'ai besoin, par contre, QT en dispose...

    ce programme etant mon premier dev en c++, j'ai continué la partie sur laquelle j'etait avec wxdigets, jusqu'a ce qu'elle fonctionne...

    maintenant, j'entame la partie que wx ne sait pas gerer...

    donc, je pense disposer de 4 alternatives :

    - faire cohabiter les deux (double linkage...)

    - faire une compilation separée (j'ai lut que ca se fait)

    - tout refaire avec QT

    - faire une librairie avec la fonction dont j'ai besoin...


    bon, mon bout de code est pas enorme, mais, j'ai quand meme mis 1 mois pour en arriver la... (connexion client serveur multithreadée)

    le seul bout dont j'ai besoin avec QT, c'est son objet "QPixmap", afin de faire une copie d'ecran...

    d'apres vous quelle alternative est preferable?
    je pencherait pour la librairie, mais, je ne sait pas comment faire, et si ca marcherait... (je sait, on peut apprendre )

    merci de vos conseils

  2. #2
    Membre éclairé Avatar de hansaplast
    Homme Profil pro
    Artisant logiciel
    Inscrit en
    Septembre 2005
    Messages
    948
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Artisant logiciel
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 948
    Points : 719
    Points
    719
    Par défaut
    plus exactement, je ne sait pas si je doit faire une static librairie ou une DLL.

    je suis en trian de chercher des info la dessus, mais apres parcours de la faq, et du mega cours de c++, je suis en train de me dire !

    donc, je vait voir...

    ps : ce que je veut faire est simple :

    une biblio qui sert a faire une capture d'ecran => pas besoin de parametre
    => comme retours, le buffer ou la capture a ete prise.

    voila

    edit : http://lfe.developpez.com/DLL/
    => de ce que j'en retient, les dll ne sont utilisable que sous windows :'(

    donc, je n'ait plus que 3 alternatives... ou alors, peut etre que je peut lancer un executable qui me retourne ma capture d'ecran? non?
    c'est pas le plus galant des codes, mais si ca marche

    edit2 : je precise pourquoi ce post :
    quand j'essaie de compiler mon projet qui fonctionne, en lui rajoutant les options de compilation d'un prjet QT, j'ai ~20* ce message d'erreure :
    Invalid argument
    sans aucune ligne decrite...
    de plus, le compilateur devient moins permissif, je suis obligé d'utiliser en lieu et place de qui fonctionnait avant...
    les options que je rejoute sont :
    CppCompiler=-DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_EDITION=QT_EDITION_DESKTOP -DQT_DLL -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -DQT_THREAD_SUPPORT -DQT_NEEDS_QMAIN g++ -I"E:/Qt/4.1.0/include/QtCore" -I"E:/Qt/4.1.0/include/QtGui" -I"E:/Qt/4.1.0/include" -I"." -I"E:/Qt/4.1.0/include/ActiveQt" -I"tmp\moc\release_shared" -I"." -I"E:/Qt/4.1.0/mkspecs/win32-g++"

    Linker=-mthreads -Wl,-enable-stdcall-fixup -Wl,-enable-auto-import -Wl,-enable-runtime-pseudo-reloc -Wl,-s -Wl,-s -Wl,-subsystem,windows -L"E:\Qt\4.1.0\lib" -L"E:\Qt\4.1.0\lib" -lmingw32 -lqtmain -lQtGui4 -lQtCore4
    en sus de celle pre-definies pour ces deux items.
    n'y connaissant rienj, je ne sait si une de ces lignes est incriminée, je sait juste que mon bout de code qt compile avec...

  3. #3
    Rédacteur

    Avatar de Matthieu Brucher
    Profil pro
    Développeur HPC
    Inscrit en
    Juillet 2005
    Messages
    9 810
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur HPC
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2005
    Messages : 9 810
    Points : 20 970
    Points
    20 970
    Par défaut
    Ca va être difficile de faire cohabiter les 2, je pense. Il est presque impossible, sauf en prenant la version commerciale avec QtSolution en plus, de donner à Qt un pointeur vers la fenêtre à capturer pour qu'il crée une fenêtre à lui à partir de celle-ci; De plus, la file des événements est implémentée de manière différente, ...
    Les DLL sous Linux s'appellent des .so, ça existe, mais ça juste un nom différent

    Porter ton appli wxWidget sous Qt te fera aussi travailler plus proprement avec des objets, c'est un avantage, malheureusement, tu vas devoir utiliser un peu qmake ou au moins moc.

  4. #4
    Membre éclairé Avatar de hansaplast
    Homme Profil pro
    Artisant logiciel
    Inscrit en
    Septembre 2005
    Messages
    948
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Artisant logiciel
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 948
    Points : 719
    Points
    719
    Par défaut
    Citation Envoyé par Miles
    Ca va être difficile de faire cohabiter les 2, je pense. Il est presque impossible, sauf en prenant la version commerciale avec QtSolution en plus, de donner à Qt un pointeur vers la fenêtre à capturer pour qu'il crée une fenêtre à lui à partir de celle-ci; De plus, la file des événements est implémentée de manière différente, ...
    je me suis mal exprimé, je en veut pas generer de fenetre avec QT, je veut jsute utiliser un objet QPixmap afin de faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    QPixmap::grabWindow(QApplication::desktop()->winId());
    => cette methode permet de faire une capture d'ecran toutrant sous linux et windows.

    Citation Envoyé par Miles
    Les DLL sous Linux s'appellent des .so, ça existe, mais ça juste un nom différent
    donc, si je genere un DLL/so avec juste une fonction faisant la cpature d'ecran, je peut la linker apres?
    il suffirait que je fasse deux version differentes une pour linux, et une pour windows?
    (je connait vraiment pas, et j'ai pas encore trouvé d'info clairs la dessus)
    Citation Envoyé par Miles
    Porter ton appli wxWidget sous Qt te fera aussi travailler plus proprement avec des objets, c'est un avantage, malheureusement, tu vas devoir utiliser un peu qmake ou au moins moc.
    c'est vrai que dans tous les cas, je vait devoir remanier mon code qui part dans tous les sens, suite a mes peregrinations dans les meandres de l'apprentisasge du c++ (dsl, je peut pas faire de phrase plus lourde...)
    cependant, je susi un enorme noob, qui a encore pas mal de mal avec beaucoups de concepts / metode de travail c++, donc, pour le peu de QT que j'ai taté, ca m'a semblé assez compliqué pour me refroidir quelque peu... (j'aimerait pouvoir dire chaque chose en son temps... mais si j'ai pas le choix...)

  5. #5
    Membre éclairé Avatar de hansaplast
    Homme Profil pro
    Artisant logiciel
    Inscrit en
    Septembre 2005
    Messages
    948
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Artisant logiciel
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 948
    Points : 719
    Points
    719
    Par défaut
    et sinon, c'est pas possible une compilation separée?
    je compile d'abord wx, puis la partie QT?

    parceque je pensait utiliser allegro, par exemple, pour mon affichage, mais il y a des conflit de type avec wx :'(

  6. #6
    Rédacteur

    Avatar de Matthieu Brucher
    Profil pro
    Développeur HPC
    Inscrit en
    Juillet 2005
    Messages
    9 810
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur HPC
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2005
    Messages : 9 810
    Points : 20 970
    Points
    20 970
    Par défaut
    Les librairies Linux et Windows ne sont pas compatibles, attention !
    Sinon, tu peux avoir une librairie avec une fonction, mais ça ne sert pas à grand chose, de toute manière, tu dois linker ton appli avec et donc avec tout Qt et wxWidgets.
    De plus, avec 2 GUI toolkits, ton appli va être énorme en taille

  7. #7
    Membre éclairé Avatar de hansaplast
    Homme Profil pro
    Artisant logiciel
    Inscrit en
    Septembre 2005
    Messages
    948
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Artisant logiciel
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 948
    Points : 719
    Points
    719
    Par défaut
    donc tout refaire avec QT est la seule solution viable?

  8. #8
    Expert éminent
    Avatar de PRomu@ld
    Homme Profil pro
    Ingénieur de Recherche
    Inscrit en
    Avril 2005
    Messages
    4 155
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Vienne (Poitou Charente)

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

    Informations forums :
    Inscription : Avril 2005
    Messages : 4 155
    Points : 6 486
    Points
    6 486
    Par défaut
    Ca serait plus propre, en effet.

    Les librairies Linux et Windows ne sont pas compatibles, attention !
    Sinon, tu peux avoir une librairie avec une fonction,
    Je rappellerais qu'il n'y a pas de librairie en C / C++ mais des bibliothèques.

  9. #9
    Rédacteur

    Avatar de Matthieu Brucher
    Profil pro
    Développeur HPC
    Inscrit en
    Juillet 2005
    Messages
    9 810
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur HPC
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2005
    Messages : 9 810
    Points : 20 970
    Points
    20 970
    Par défaut
    pardon, erreur de mauvaise traduction

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 16/05/2004, 17h56
  2. wxWidgets - besoins d'aide...
    Par barbarello dans le forum wxWidgets
    Réponses: 2
    Dernier message: 07/05/2004, 09h33
  3. [CR6][CR8] cohabitation sur un même poste
    Par obi dans le forum SAP Crystal Reports
    Réponses: 8
    Dernier message: 27/11/2003, 20h24
  4. [Kylix] cohabitation
    Par jpaulin dans le forum EDI
    Réponses: 1
    Dernier message: 01/04/2003, 23h11

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