43 votes

Compiler Qt 4.8.x pour Visual Studio 2012

Quelles mesures dois-je prendre pour compiler Qt (version 4.8.x) pour Visual Studio 2012?

J'ai déjà suivi les instructions à la réponse de cette question (qui est pour VS 2010), mais WebKit module réussi à compiler (je ne sais pas si le message d'erreur était connecté n'importe où, lors de la compilation).

J'ai aussi vu cette question qui demande la même chose, mais pour visual studio 2012 RC (c'est pourquoi j'ai pensé que ce ne serait pas une double question). En outre, le répondeur dit qu'il a compilé Qt VS 2011 version Bêta, donc il ya une chance, il peut ne pas fonctionner pour VS 2012 (RTM). La compilation prend beaucoup de temps, c'est pourquoi je n'ai pas encore essayé.

Au moins un problème que j'ai réalisé, c'est qu'il n'y a pas d' win32-msvc2012 - répertoire dans le répertoire Qt\mkspecs. Dois-je viens de créer ce répertoire et copiez les fichiers à partir d' win32-msvc2010, peut-être avec quelques modifications?

Un autre sous-question est de savoir si je dois faire quelques modifications pour Qt sources avant de lancer la compilation.

72voto

Vertexwahn Points 2095

Qt 4.8.3 avec Visual Studio 2012 x64 (devrait également travailler avec 4.8.2)

  1. Installer Strawberry Perl

  2. Télécharger Qt 4.8.3 le code source http://qt-project.org/downloads

  3. Aller à l' mkspecs\win32-msvc2010. Ouvrez qmake.conf et le changement:

    QMAKE_COMPILER_DEFINES  += _MSC_VER=1600 WIN32
    

    pour:

    QMAKE_COMPILER_DEFINES  += _MSC_VER=1700 WIN32
    
  4. Remplacer qt-everywhere-opensource-src-4.8.3-x64\src\3rdparty\webkit\Source\JavaScriptCore\wtf\HashSet.h par cette HashSet.h.

  5. Démarrer "VS2012 x64 Outils Natifs Invite de commandes"

  6. Passer à Qt 4.8.3 source de répertoire (le répertoire qui contient configure.exe)

  7. Exécuter:

    configure -mp -opensource -nomake demos -nomake examples -platform win32-msvc2010
    
  8. Suivi de:

    nmake
    

J'ai programmé un outil appelé BlueGo qui télécharge automatiquement Qt 4.8.3 et la construit avec VS2012 x64: http://bluego.vertexwahn.de (fonctionne aussi avec VS2010 x64) (il n'a tout simplement ce que j'ai décrit ci-dessus automatiquement)

22voto

cbielow Points 191

Qt 4.8.4 besoins de moins de mouvement que décrit par Vertexwahn ci-dessus.

  • Le HashSet encore être fixe (voir le corrigé de Vertexwahn) après l'intervalle Qt a été extrait à partir de l'archive.
  • La plate-forme win32-msvc2012 est pris en charge hors de la boîte si (fonctionne également pour les 64 bits dans l'environnement 64 bits, ne me demandez pas pourquoi ils le nomment Win32).

Donc, il suffit de remplacer le HashSet.h et compiler.

6voto

Florian George Points 51

Juste la création d'un win32-msvc2012 répertoire avec les modifications ci-dessous ne fonctionne pas pour moi, il n'y a plus de modifications nécessaires. Ce qui est exactement nécessaire est décrit dans le fil que vous avez déjà liés.

Ce que j'ai fait, je suis allé à win32-msvc2010.

Là, ouvrez qmake.conf et changer

QMAKE_COMPILER_DEFINES += _MSC_VER=1600 WIN32

pour

QMAKE_COMPILER_DEFINES += _MSC_VER=1700 WIN32

Ensuite, j'ai pu configurer à l'aide de win32-msvc2010.

Aussi, j'ai utilisé ces changements: http://qt-project.org/forums/viewthread/17771 (alzi Version)

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X