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 :

Problème lors d'une migration de Linux vers Windows


Sujet :

Qt

  1. #1
    Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Mai 2014
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2014
    Messages : 4
    Points : 3
    Points
    3
    Par défaut Problème lors d'une migration de Linux vers Windows
    Bonjour,

    Je voulais rendre mon application Qt utilisable sous Windows après qu'elle soit totalement fonctionnelle sous Linux. Je me suis confrontée à pas mal d'erreurs différentes que j'ai toute pu régler jusqu'à cette suite d'erreur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    crtexe.c:-1: erreur : undefined reference to '_imp__Sleep@4'
    crtexe.c:-1: erreur : undefined reference to '_imp__SetUnhandledExceptionFilter@4'
    crtexe.c:-1: erreur : undefined reference to '_imp__GetProcAddress@8'
    crtexe.c:-1: erreur : undefined reference to '_imp__GetStartupInfoA@4'
    :-1: erreur : c:/qt/tools/mingw48_32/bin/../lib/gcc/i686-w64-mingw32/4.8.0/../../../../i686-w64-mingw32/lib/../lib/crt2.o: bad reloc address 0x0 in section `.CRT$XCAA'
    collect2.exe:-1: erreur : error: ld returned 1 exit status
    La sortie détaillée des erreurs est :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    c:/qt/tools/mingw48_32/bin/../lib/gcc/i686-w64-mingw32/4.8.0/../../../../i686-w64-mingw32/lib/../lib/crt2.o:crtexe.c:(.text+0x1f6): undefined reference to `_imp__Sleep@4'
    c:/qt/tools/mingw48_32/bin/../lib/gcc/i686-w64-mingw32/4.8.0/../../../../i686-w64-mingw32/lib/../lib/crt2.o:crtexe.c:(.text+0x2a6): undefined reference to `_imp__SetUnhandledExceptionFilter@4'
    Makefile.Debug:328: recipe for target 'debug/MonAppli.exe' failed
    c:/qt/tools/mingw48_32/bin/../lib/gcc/i686-w64-mingw32/4.8.0/../../../../i686-w64-mingw32/lib/../lib/crt2.o:crtexe.c:(.text+0x2c4): undefined reference to `_imp__GetProcAddress@8'
    c:/qt/tools/mingw48_32/bin/../lib/gcc/i686-w64-mingw32/4.8.0/../../../../i686-w64-mingw32/lib/../lib/crt2.o:crtexe.c:(.text+0x485): undefined reference to `_imp__GetStartupInfoA@4'
    c:/qt/tools/mingw48_32/bin/../lib/gcc/i686-w64-mingw32/4.8.0/../../../../i686-w64-mingw32/bin/ld.exe: c:/qt/tools/mingw48_32/bin/../lib/gcc/i686-w64-mingw32/4.8.0/../../../../i686-w64-mingw32/lib/../lib/crt2.o: bad reloc address 0x0 in section `.CRT$XCAA'
    collect2.exe: error: ld returned 1 exit status
    mingw32-make[1]: Leaving directory 'C:/Users/user/Desktop/build-MonAppli-Desktop_Qt_5_2_0_MinGW_32bit-Debug'
    makefile:34: recipe for target 'debug' failed
    mingw32-make[1]: *** [debug/MonAppli.exe] Error 1
    mingw32-make: *** [debug] Error 2
    08:59:58: Le processus "C:\Qt\Tools\mingw48_32\bin\mingw32-make.exe" s'est terminé avec le code 2.
    Erreur lors de la compilation/déploiement du projet MonAppli (kit : Desktop Qt 5.2.0 MinGW 32bit)
    Lors de l'exécution de l'étape "Make"
    Pour le contexte, j'utilise Qt 5, MinGW et windows 7. Je pense que le problème ne vient pas de qt, puisque ces fonctions ne sont pas issues d'une librairie qt mais de librairies systèmes.
    J'ai donc essayé d'ajouter à mon .pro les lignes suivantes, mais ça n'a rien changé :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    win32: LIBS += -L$$PWD/../../../../Qt/Tools/MinGW/i686-w64-mingw32/lib/ -lmingw32 -lcrtdll -luser32 -lkernel32 -lgdi32
    INCLUDEPATH += $$PWD/../../../../Qt/Tools/MinGW/i686-w64-mingw32/include
    DEPENDPATH += $$PWD/../../../../Qt/Tools/MinGW/i686-w64-mingw32/include
    Est ce que vous auriez des pistes pour m'aider ?

  2. #2
    Responsable Systèmes


    Homme Profil pro
    Gestion de parcs informatique
    Inscrit en
    Août 2011
    Messages
    17 452
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Gestion de parcs informatique
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Août 2011
    Messages : 17 452
    Points : 43 103
    Points
    43 103
    Par défaut
    Utilises tu Qt Creator ? Si c'est le cas en important ton .pro et tes fichiers .c .h , ça devrait fonctionner.

    Sous linux, tu étais aussi en Qt5 ou en Qt 4 ?
    Ma page sur developpez.com : http://chrtophe.developpez.com/ (avec mes articles)
    Mon article sur le P2V, mon article sur le cloud
    Consultez nos FAQ : Windows, Linux, Virtualisation

  3. #3
    Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Mai 2014
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2014
    Messages : 4
    Points : 3
    Points
    3
    Par défaut
    Citation Envoyé par chrtophe Voir le message
    Utilises tu Qt Creator ? Si c'est le cas en important ton .pro et tes fichiers .c .h , ça devrait fonctionner.
    J'utilise bien Qt Creator, mais j'ai du mal à voir comment on importe le .pro et les fichiers sans faire un ouvrir du .pro classique. Est ce que vous pourriez m'expliquer comment faire ?
    J'ai essayé de chercher dans nouveau, importer un projet mais on ne peut pas importer de projet Qt sans passer par un gestionnaire de versionning.

    Citation Envoyé par chrtophe Voir le message
    Sous linux, tu étais aussi en Qt5 ou en Qt 4 ?
    Sous linux, j'étais aussi en Qt5.

  4. #4
    Responsable Systèmes


    Homme Profil pro
    Gestion de parcs informatique
    Inscrit en
    Août 2011
    Messages
    17 452
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Gestion de parcs informatique
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Août 2011
    Messages : 17 452
    Points : 43 103
    Points
    43 103
    Par défaut
    Rien de plus simple, tu double-cliques sur le fichier .pro et il va ouvrir Qt Creator. Si ton projet n'a rien de confidentiel, tu peux me l'envoyer en message privé et je peux regarder si je peux l'ouvrir sans prob.

    Je suis passé de Linux à Windows avec Qt4 sans aucune difficulté. J'ai juste eu à recompiler.

    Et pour commencer, si dans Qt tu crée un nouveau projet avec juste un Widget dedans par exemple, ça compile ?

    Par ailleurs, utilises tu d'autres bibliothèques spécifiques ?
    Ma page sur developpez.com : http://chrtophe.developpez.com/ (avec mes articles)
    Mon article sur le P2V, mon article sur le cloud
    Consultez nos FAQ : Windows, Linux, Virtualisation

  5. #5
    Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Mai 2014
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2014
    Messages : 4
    Points : 3
    Points
    3
    Par défaut
    Citation Envoyé par chrtophe Voir le message
    Rien de plus simple, tu double-cliques sur le fichier .pro et il va ouvrir Qt Creator. Si ton projet n'a rien de confidentiel, tu peux me l'envoyer en message privé et je peux regarder si je peux l'ouvrir sans prob.

    Je suis passé de Linux à Windows avec Qt4 sans aucune difficulté. J'ai juste eu à recompiler.
    Alors je ne peux pas te l'envoyer, mais du coup c'est bien ce que je faisais depuis le début pour l'ouverture.

    Citation Envoyé par chrtophe Voir le message
    Et pour commencer, si dans Qt tu crée un nouveau projet avec juste un Widget dedans par exemple, ça compile ?
    Oui, j'ai pu tester avec un projet test standard et ça compilait comme il fallait. le projet test contenait une QMainWindow et son petit QPushButton.

    Citation Envoyé par chrtophe Voir le message
    Par ailleurs, utilises tu d'autres bibliothèques spécifiques ?
    Oui, j'utilise OpenCv et log4cpp et la sdl1. Je les ai recompilé pour MinGW avant de les joindre à mon .pro.
    J'utilisais aussi des librairies systèmes qui fonctionnent uniquement sous linux et où j'ai du trouver une alternative fonctionnelle pour Windows.

    J'ai remarqué qu'en fonction de l'ordre des librairies dans le .pro, je n'obtenais pas les même erreurs.
    J'ai ce couple d'erreur qui arrive aussi :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    PropertyConfigurator.cpp:-1: erreur : undefined reference to '__gxx_personality_sj0'
    PropertyConfigurator.cpp:-1: erreur : undefined reference to '_Unwind_SjLj_Register'
    PropertyConfigurator.cpp:-1: erreur : undefined reference to '_Unwind_SjLj_Resume'
    PropertyConfigurator.cpp:-1: erreur : undefined reference to '_Unwind_SjLj_Unregister'
    :-1: erreur : C:/Users/user/Desktop/MonAppli/../../../../LOG4CPP/lib//liblog4cpp.a(PropertyConfigurator.obj): bad reloc address 0x10 in section '.gcc_except_table'
    collect2.exe:-1: erreur : error: ld returned 1 exit status
    Je me suis mise à la recherche de ces erreurs. Il me manque peut être des librairies que je n'ai pas encore linké correctement.

    Edit : Bonnes ou mauvaises nouvelles à force de retourner le problème dans tous les sens, j'ai réussi à compiler mais maintenant j'ai une erreur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    During startup program exited with code 0xc0000135
    lors de l’exécution du programme. Si quelqu'un connais ce type d'erreur, je lui en serai très reconnaissante ?

  6. #6
    Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Mai 2014
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2014
    Messages : 4
    Points : 3
    Points
    3
    Par défaut
    Citation Envoyé par Cocoyote Voir le message
    Edit : Bonnes ou mauvaises nouvelles à force de retourner le problème dans tous les sens, j'ai réussi à compiler mais maintenant j'ai une erreur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    During startup program exited with code 0xc0000135
    lors de l’exécution du programme. Si quelqu'un connais ce type d'erreur, je lui en serai très reconnaissante ?
    Pour clore mon sujet sans le laisser dans le vague si d'autres personnes ont le même problème.
    Je n'avais pas linké les bonnes librairies à mon projet, car j'avais trouvé sur internet des "solutions" et j'ai clairement voulu les appliquer sans chercher à bien comprendre comment les linker correctement. Du coup, j'ai ajouté des librairies compilés avec MinGw 4.7 au lieu de 4.8 alors que mon Qt tournait avec MinGw 4.8. J'ai voulu ajouter une mauvaise librairie système à mon projet plutôt que de la prendre dans le dossier de MinGw.
    Et pour la dernière erreur, je ne savais tout simplement pas qu'il fallait ajouter les .dll dans le dossier de l’exécutable.

    chrtophe, je vous remercie pour l'aide apporté.

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

Discussions similaires

  1. Porter une application de Linux vers Windows
    Par EricPellegrini dans le forum Choisir un environnement de développement
    Réponses: 1
    Dernier message: 25/02/2014, 00h31
  2. debogage et portage d'une biblio de linux vers windows
    Par shadowless dans le forum Langage
    Réponses: 3
    Dernier message: 03/05/2011, 09h08
  3. Problème lors d'une migration
    Par parab dans le forum IHM
    Réponses: 6
    Dernier message: 28/01/2010, 16h36
  4. probléme lors d'une migration d'une appli php de xp a vista
    Par mioke dans le forum Windows Vista
    Réponses: 1
    Dernier message: 10/10/2009, 00h04
  5. Réponses: 2
    Dernier message: 08/12/2005, 05h28

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