Construction de Qt5 avec Visual Studio 2012 / Visual Studio 2013 et intégration à l’EDI

Comment pouvez-vous télécharger Qt5 et l’intégrer à Visual Studio 2012? Quels sont certains des problèmes que vous rencontrerez et comment résoudre ces problèmes?

MISE À JOUR Visual Studio 2013

Les succès sont également signalés avec Visual Studio 2013 et les notes sont conservées pour VS 2013.

Notez également que l’objective de la question est fortement de simplement construire Qt avec Visual Studio. Il y a également des notes sur l’intégration avec l’IDE de Visual Studio

Cette méthode est testée pour fonctionner sur Visual Studio 2013. Des fichiers binarys pré-construits utilisant Visual Studio 2012 et 2013 sont disponibles ici , y compris les versions OpenGL.

Étape 1: le programme d’installation

  1. Téléchargez et installez RapidEE ici . RapidEE est un éditeur de variables d’environnement Windows. C’est extrêmement utile pour le rest de ce processus (et en général).

  2. Installez le SDK DirectX 11. Il fait maintenant partie du SDK de Windows 8, vous devez donc d’abord installer le SDK DirectX 10, que vous pouvez obtenir ici (mais voir l’avertissement dans la phrase suivante). Si le package redissortingbuable Visual C ++ 2010 est installé et que vous le faites probablement (il est automatiquement installé avec VS 2010), suivez les étapes décrites ici pour vous aider à installer DirectX 10. Une fois le SDK DirectX 10 installé, téléchargez et installez le SDK Windows 8 ici , qui contient le SDK DirectX 11 . Oui, cela pose un problème, mais à moins que vous sachiez que vous avez le SDK DirectX 11, la génération Qt échouera .

  3. Installez Python pour Windows (j’ai entendu 2.6+, en travaillant avec 3.3) depuis Python.org ou Anaconda Python .

  4. Installez Perl pour Windows à partir d’ ActiveState .


Étape 2: Gitting (et construction) Qt5 (oui, cela signifie Git )

  1. Suivez le guide d’installation pour Windows sur le site Web de qt-project.

    Résumé

    Pour résumer les détails du lien ci-dessus et des notes suivantes (VEUILLEZ CONSULTER LES NOTES SUIVANTES si vous avez des erreurs, il se peut que l’on vous réponde):

    • Désinstallez Avast (si vous l’avez installé) pour éviter les erreurs de génération. Oui, cela signifie littéralement le désinstaller . Retirez-le à 100% de votre système. La désactiver ne fonctionnera pas . Voir les notes détaillées ci-dessous.

    • Remarque pour les premières étapes : N’utilisez PAS SmartGit pour la première étape, à moins que vous ne sachiez vraiment ce que vous faites, car les valeurs par défaut de SmartGit vont tout arracher, et ce n’est pas ce que vous voulez.

    • Git pour Windows doit être installé.

    • Décidez où vous voulez placer l’installation de Qt et cd dans le répertoire qui contiendra la nouvelle installation à partir de n’importe quelle fenêtre d’invite de commandes. (Parce que le processus est tellement fragile et sujet aux erreurs, je le mets directement dans C: mais ce n’est probablement pas nécessaire).

    • Dans le répertoire ci-dessus, exécutez:

      git clone git://gitorious.org/qt/qt5.git qt5

      C’est rapide. Une fois terminé, vous devriez être sur la twig ‘stable’, mais vous pouvez toujours exécuter git checkout stable après vous être qt5 répertoire qt5 nouvellement créé, pour en être sûr. L’utilisation de git checkout 5.4.1 est confirmée pour fonctionner avec VS2013 64 bits.

    • Fermez votre fenêtre d’invite de commandes actuelle (si ce n’est pas une fenêtre d’invite de commandes Visual Studio) avant de passer à l’étape suivante. Ceci est pour vous assurer que vous utilisez la fenêtre d’invite de commandes Visual Studio dans les étapes suivantes.

    • Ensuite, exécutez l’invite de commande VS Tools 32 bits (x86) ou 64 bits (selon que vous construisez Qt5 en 32 ou 64 bits). Pour y accéder, vous devez le trouver via le menu Démarrer – allez à Program Files -> [Microsoft] Visual Studio 2012/2013 -> Visual Studio Tools , et vous le verrez avec un nom amusant; le nom doit inclure l’expression Native Tools ; la version 32 bits aura x86 dans le nom et la version 64 bits aura x64 dans le nom.

    • cd dans le répertoire qt5 nouvellement créé à partir de l’étape ci-dessus.

    • À partir de l’invite de commandes Visual Studio, le rest des sous-modules Qt doit être téléchargé:

      perl ./init-repository --no-webkit

      L’exécution de cette étape prend un certain temps, car il faut beaucoup télécharger, mais ce n’est pas si terrible sur une connexion décente.

    • Ensuite, téléchargez tous les sous-modules OPTIONNELS restants que init-repository ne télécharge pas – SmartGit ne fonctionne bien qu’à partir de ce stade (voir les commentaires ci-dessous).

    • Une fois le téléchargement de Qt terminé, la commande suivante prépare l’environnement de génération (il doit également être exécuté à l’aide de l’invite de commande [32 | 64] VS Native Tools):

      configure -developer-build -opensource -confirm-license -mp -nomake examples -nomake tests -debug-and-release -c++11 -no-warnings-are-errors -platform win32-msvc2012 .

      Remarques sur cette ligne de commande: l’option c++11 peut ne pas être nécessaire avec le compilateur VS2012, mais fonctionne avec VS2013; les -no-warnings-are-errors sont nécessaires si vous obtenez des erreurs sur une génération automatique d’ANGLE 64 bits; -platform est automatiquement définie sur win32-msvc2012 , par conséquent, la version 32 bits de Qt est utilisée par défaut, et il n’est probablement pas nécessaire de fournir -platform à la ligne de commande (même si des versions précédentes de VS sont installées). Pour VS2013, utilisez -platform win32-msvc2013 .

      Cela prend quelques minutes pour exécuter cette étape, mais ce n’est pas si grave.

    • Enfin, la commande pour générer Qt sur le système (également exécutée dans l’invite de commande de VS Native Tools) est simplement:

      nmake

      Attendez-vous à attendre des heures pour que la construction se termine. Si vous avez spécifié un dossier de sortie avec -prefix (voir les remarques ci-dessous), utilisez nmake install , sinon c’est tout.


REMARQUES:

Notes générales

Au cas où vous ne compreniez pas la documentation mentionnée ci-dessus, juste un FYI que la bibliothèque ANGLE utilisera (par défaut) au lieu d’OpenGL, et c’est pourquoi vous avez dû installer DirectX 11 ci-dessus.

Assurez-vous que vous utilisez l’invite de commande VS Native Tools pour exécuter toutes les commandes à partir du lien ci-dessus (c’est-à-dire, perl .\init-repository --no-webkit , configure et nmake ). Vous utiliserez l’invite de commande [32 | 64] bit ( x86 ou x64 ), selon que vous construisez Qt en 32 bits ou 64 bits. Si vous installez perl avec l’invite de commandes ouverte (assurez-vous qu’il se trouve dans le PATH ), vous devrez redémarrer l’invite de commandes pour que perl soit reconnu en tant que commande.

Lors de l’exécution de “init-repository” (à partir des étapes du lien ci-dessus), la documentation ne nous indique pas clairement, mais vous devez l’exécuter via perl ; c’est-à-dire perl ./init-repository --no-webkit . Les commandes configure et nmake , cependant, sont appelées directement.

Une option très utile à transmettre à configure est -mp , qui oblige Qt à construire plusieurs cœurs en parallèle, ce qui accélère considérablement le temps de construction (long).

Pour spécifier un dossier de sortie, ajoutez -prefix [outfolder] à la commande configure . Par exemple, utilisez -prefix %CD%\output\x64\vc12 serait un sous-dossier de sortie approprié pour une version 64 bits de Visual Studio 2013 (12.0).


Unicode Support (ICU)

Si vous souhaitez un support Unicode (via ICU ), portez une attention particulière aux instructions figurant dans le lien ci-dessus. En résumé, ICU doit être créée à partir de zéro dans VS 2012, car les seuls binarys ICU préconfigurés pour Windows sont destinés à VS 2010. Construire dans VS 2012 est indéniable – localisez simplement la solution ICU (.sln) dans \ icu \ source \ allinone, et construire à la fois en mode Debug et Release (soit en mode 32 bits ou 64 bits, selon le mode que vous construisez dans Qt in – NE PAS construire l’autre bit, car ICU écrasera le dossier de sortie avec les binarys) (Le processus de génération Qt localisera correctement la version de débogage ou de publication de ICU.) Il doit être généré sans erreur. Ensuite, ajoutez le chemin d’access à \ lib en tant qu’entrée de chaîne dans une (probablement) nouvelle variable d’environnement Windows appelée “LIB” (vous pouvez utiliser Rapid EE pour cela: faites de LIB une “chaîne extensible” dans RapidEE même s’il n’y a que 1 entrée), et ajoutez également le chemin d’access à \ include en tant qu’entrée de chaîne dans une (probablement) nouvelle variable d’environnement Windows appelée “INCLUDE”. (Remarque: L’ajout de ces chemins à la variable PATH ne fonctionnera pas.) Une fois Qt créé, vous pouvez supprimer toutes les entrées que vous venez d’append. En outre, ajoutez le chemin d’exécution du dll de l’ICU ( \ bin) à la variable PATH de l’environnement ou le processus de génération de Qt (en particulier, uic.exe s’exécute) donnera une erreur trompeuse et trompeuse . Enfin, sur la ligne de commande configure (ci-dessous), veillez à append -icu tant que paramètre de ligne de commande supplémentaire.

Échec de l’ICU :

Actuellement, il semble y avoir un bogue de construction de Qt5 avec le compilateur VS2012 WHEN ICU IS ENDD. Plus précisément, qtbase\src\corelib\codecs\qtextcodec.cpp ligne 688 (Qt5 v5.02) ne parvient pas à renvoyer un codec pour le nom de codec “US-ASCII” (le codec est NULL), provoquant le blocage de “lrelease.exe” essayer de déréférencer le codec plus tard (j’ai perdu la trace de ce numéro de fichier / ligne, mais c’est une déréférence évidente de la variable de codec NULL). Malheureusement, cela signifie qu’à ma connaissance, WebKit ne peut pas être construit avec (au moins) la version 32 bits de Qt5 avec le compilateur VS2012 , car WebKit nécessite ICU.

Si quelqu’un est capable de construire Qt5 avec le compilateur VS2012 avec ICU activé, merci de le mettre à jour.

Clarification de l’USI :

Si vous avez ICU sur votre chemin, Qt le construira automatiquement. En d’autres termes, le drapeau ” -icu ” est implicite. Cependant, cela provoque une erreur avec “lrelease.exe” comme mentionné ci-dessus. La solution serait donc d’append le drapeau -no-icu à la commande configure.


Sous-modules supplémentaires

Si vous voulez des sous-modules en plus des sous-modules par défaut, vous pouvez utiliser SmartGit (ou ligne de commande) après avoir terminé la commande init-repository . SmartGit est peut-être plus simple, car vous n’avez pas besoin de copier le chemin d’access vers la ligne de commande, mais vous pouvez utiliser directement l’interface utilisateur.

AVERTISSEMENT: NE TÉLÉCHARGEZ PAS LE qlalr MODULE FACULTATIF qlalr , car il ne sera pas construit avec la version globale de Qt, et n’est pas nécessaire pour les utilisateurs de Qt, mais est uniquement utilisé pour le développement interne de Qt.

ATTENTION: une ligne de commande shell, suivie de perl .\init-repository --no-webkit , doit être utilisée (NOT SmartGit); ces étapes ne téléchargeront correctement que les sous-modules Qt par défaut. Vous ne devez pas utiliser SmartGit pour cloner et télécharger les fichiers Git depuis git://gitorious.org/qt/qt5.git car SmartGit ne gère pas actuellement les sous-modules correctement. Au lieu de cela, ouvrez une invite de commande shell Windows standard (en utilisant n’importe quelle application d’invite de commandes, pas nécessairement l’invite de commande VS Tools) et (en supposant que Git est correctement installé sur le système; ne pas aller à Git pour Windows et installer directement) tapez git clone git://gitorious.org/qt/qt5.git directement depuis la ligne de commande; peut-être suivre cela avec git checkout stable (je ne suis pas sûr si cette twig est extraite par défaut); puis suivez la procédure avec la ligne de commande perl .\init-repository --no-webkit pour supprimer les repositorys DEFAULT (sauf WebKit, qui nécessite apparemment ICU et ICU ne pouvant pas être intégré à Qt5 32 bits avec VS2012; voir commentaires).

Les étapes pour télécharger tous les fichiers sources Qt nécessaires sont donc les suivantes: 1. Utilisez une ligne de commande Windows pour exécuter le git clone git://gitorious.org/qt/qt5.git initial git clone git://gitorious.org/qt/qt5.git ; 2. Exécutez perl .\init-repository --no-webkit depuis une invite de commandes VS Tools 2012; et éventuellement 3. Utilisez SmartGit (à partir du lien ci-dessus) (ou équivalent) pour “ouvrir un projet existant” (choisissez le dossier racine Qt5) et effectuez un tirage depuis SmartGit pour télécharger les référentiels autres que ceux par défaut (mais ne téléchargez pas qlalr ). C’est tout; Vous avez tous les fichiers Qt nécessaires et facultatifs (y compris les sous-modules) sur votre système.

Si quelqu’un découvre d’autres sous-modules optionnels qui ne parviennent pas à se construire et / ou sont destinés à un usage interne uniquement (en plus de qlalr ), veuillez mettre à jour ce wiki pour les spécifier.

En général, les sous-modules par défaut obtenus via perl .\init-repository --no-webkit sont suffisants. Si vous savez ou que vous découvrirez ultérieurement que vous avez d’autres modules (autres que ceux par défaut), vous pouvez toujours les append ultérieurement.


Problèmes généraux

Si, à un moment donné, vous obtenez l’erreur indiquant que la commande “python” (ou quelque chose de similaire) n’est pas reconnue, vérifiez simplement que le dossier contenant python.exe (ou le .exe approprié) fait partie de la variable path. Si ce n’est pas le cas, ajoutez-le (utilisez RapidEE comme indiqué ci-dessus pour plus de commodité) et essayez à nouveau ce que vous faisiez. Si c’est le cas, assurez-vous d’avoir redémarré votre invite de commande APRÈS l’ajout de la commande au chemin.

Il est important de noter deux autres problèmes liés au chemin d’access (cité dans la documentation associée au lien ci-dessus): ” Assurez-vous que l’exécutable perl se trouve dans le chemin avant l’exécutable perl fourni par msysgit, car ce dernier est obsolète “; et ” Vous ne pourrez peut-être pas construire si sh.exe est dans votre PATH (par exemple suite à une installation de git ou msys). Une telle erreur est indiquée par qt5-srcqtbasebinqmake.exe: commande introuvable et similaire. Dans ce cas , assurez-vous que sh.exe n’est pas dans votre chemin. Vous devrez reconfigurer si votre installation est déjà configurée.

Au cours du processus, vous pouvez rencontrer une erreur lors de l’utilisation de nmake sur un fichier. Si vous le faites, allez simplement dans ce répertoire et forcez le fichier de problème. Puis recommencez le processus nmake sur Qt5.


Problèmes spécifiques

AVERTISSEMENT: Vous devrez peut-être désactiver le logiciel antivirus ET SANDBOXING pendant le processus Qt nmake (et, pour être sûr, tout au long de ce processus). En interne, Qt exécute un certain nombre d’exécutables avec lesquels les programmes antivirus peuvent interférer (parfois en silence). En particulier, si vous disposez d’un logiciel de sandboxing, assurez-vous de désactiver le sandboxing.

ATTENTION: AVAST! Utilisateurs de Sandbox: Avast Sandbox a un bogue dans lequel, même si vous désactivez le sandbox automatique d’Avast, le sandbox ne s’éteindra PAS et mettra en sourdine tous les fichiers de ressources créés automatiquement par le programme rcc de Qt. La version Qt échoue TOUJOURS pour tout utilisateur qui a installé la fonctionnalité de boîte automatique d’Avast, MÊME AVEC AUTO-SANDBOXING DÉSACTIVÉ. LA SEULE MANIERE DE SURMONTER CETTE QUESTION EST DE DÉSINSTALLER AVAST! DE VOTRE SYSTÈME avant de construire Qt. Vous pouvez réinstaller Avast! après la construction de Qt est terminée.


La compilation de Qt5 peut prendre beaucoup de temps (heures, même avec l’option -mp multithreading). La patience.


Étape 3: Intégration de Qt5 à Visual Studio 2012

  1. Téléchargez et installez le complément Visual Studio Qt5 . Il se trouve dans la section “Autres téléchargements” en bas de la page et ne fonctionnera pas avec Visual Studio Express.

  2. Ouvrez Visual Studio 2012 et accédez à Qt Options (sous “Qt5” dans la barre de menus supérieure).

  3. Dans l’onglet Versions Qt, vérifiez si Qt5 est déjà présent. Si ce n’est pas le cas, cliquez sur Ajouter, choisissez un nom de version (probablement un nom tel que 5.xx) et accédez au dossier contenant qmake.exe (généralement C:\Qt\qt5\qtbase ).

  4. Quittez la boîte de dialog Qt Options.

  5. Créez un nouveau projet Visual Studio. Lorsque vous voyez la boîte de dialog Nouveau projet, vous devriez voir l’option Modèle de Qt5 Projects .

  6. Une fois que vous avez votre nouveau projet Qt, faites un clic droit dessus et sélectionnez “Convertir en projet généré par QMake”. Construisez le projet, puis faites un clic droit dessus et sélectionnez “Convertir le projet en projet complémentaire Qt”. Construire à nouveau, puis exécutez. Vous devriez maintenant avoir un projet Qt opérationnel.


Ajouter Qt5 à un projet Visual Studio 2012 VC ++ existant

Cette section peut ou peut ne pas fonctionner pour vous. Si vous rencontrez des problèmes ou avez des solutions supplémentaires / meilleures, veuillez laisser un commentaire ou modifier l’étape appropriée.

  1. Cliquez avec le bouton droit sur votre projet dans VS et choisissez “décharger le projet”. Cliquez à nouveau avec le bouton droit sur le projet et sélectionnez “Modifier [nom du projet] .vcxproj”. Cela ouvre le fichier de projet afin que vous puissiez y append Qt5.

  2. Accédez à Global PropertyGroup et ajoutez ou modifiez le à Qt4VSv1.0.

  3. Rechargez le projet, puis cliquez avec le bouton droit de la souris et sélectionnez “Convertir le projet en projet complémentaire Qt”

  4. Attendez la fin de la conversion (cela ne prend pas plus de deux secondes), puis choisissez Qt5>Project Settings . Accédez à l’onglet Modules, et vérifiez les modules sur lesquels vous souhaitez que votre projet repose (ceux de base sont Core , Widgets et GUI ).

  5. En suivant les étapes ici , ajoutez le répertoire $(QTDIR)\include .


    REMARQUES:

    Si à tout moment vous windows.h , vous devez #define NOMINMAX avant de le faire pour éviter les conflits avec qdatetime.h .

    Une fois les étapes ci-dessus effectuées, vous pouvez rendre votre projet utilisable par Qt Creator en sélectionnant Qt5>Create basic .pro file .


NOTES DE FIN: Si vous avez une question liée aux informations contenues dans ce guide, veuillez l’afficher en tant que nouvelle question (pas une réponse ici), et la réponse ou un lien vers la réponse peut être ajouté.

J’ai réussi à intégrer Qt 5.0.2 avec Visual Studio 2012 sur Windows 7 sur la base de l’excellent wiki ci-dessus et sur ce lien qt-project . Étant donné que j’ai effectué certaines des étapes d’une manière légèrement différente, j’ai pensé que ce serait valable de le publier ici:

La séquence ci-dessous doit être exécutée dans l’ordre exact indiqué:

0 – Désinstallez Avast (si vous l’avez déjà installé) pour éviter les erreurs de construction. En raison d’un bogue Avast, sa désactivation ne fonctionnera pas.

1 – Installez Git (> = 1.6.x);

2 – Installez Python (> = 2.6.x). [python.org];

3 – Installez Perl (> = 5.14). [activestate.com];

4 – Installez Ruby. [rubyinstaller.org];

5 – Ouvrez l’invite de commande Windows 7 (n’utilisez pas l’invite de commande du développeur VS2012 maintenant);

6 – Choisissez n’importe quel répertoire que vous voulez pour qt5, en ce qui concerne aucun espace n’est autorisé pour le chemin choisi. J’ai décidé d’utiliser le chemin “C: \ qt5”;

7 – Retour à l’invite de commandes Windows 7 (dans mon cas, invitant “C: \ qt5>”), tapez:

 git clone git://gitorious.org/qt/qt5.git qt5 

8 – Vérifier la version stable:

 cd qt5 git checkout stable 

9 – Vous recevrez probablement un message confirmant que cette version est déjà stable. Fermez l’invite de commande.

10 – Ouvrez la console Developers de Visual Studio (Tous les programmes> Visual Studio 2012> Outils Visual Studio> Invite de commande du développeur pour VS2012) et remplacez le répertoire actuel par celui que vous avez choisi (“C: \ qt5” dans mon exemple);

11 – Télécharger les sous-modules Qt, en ignorant webkit (source commune des erreurs de build …):

 perl .\init-repository --no-webkit 

12 – Maintenant, entrez cette énorme commande pour configurer correctement votre build:

 configure -developer-build -opensource -nomake examples -nomake tests -nomake demos -debug-and-release -c++11 -mp -nomake webkit -confirm-license 

13 – Ensuite, assurez-vous que le module qlalr ne sera PAS construit. Pour ce faire, ouvrez l’Explorateur Windows et accédez au répertoire Qt de votre choix (” C: \ qt5 ” dans mon exemple) et vérifiez si le dossier qlalr existe. Si oui, supprimez-le;

14 – Temps de construction … Les erreurs de génération possibles proviendraient de modules secondaires (tels que webkit), qui n’affectent pas la fonctionnalité principale de Qt (webkit lui-même ne devrait pas poser de problème puisque nous avons précédemment configuré la configuration pour ne pas générer il). Nous pouvons alors les ignorer et continuer à exécuter la construction sur des modules indépendants:

 nmake /I /K 

15 – Pour conclure l’intégration, suivez l’étape 3 du wiki de la communauté ci-dessus (“Étape 3: Intégration de Qt5 à Visual Studio 2012”).

Je veux juste mentionner qu’il existe une version prédéfinie de Qt 5.2 pour Visual Studio 2012 disponible à l’ adresse http://qt-project.org/downloads . Donc, si vous ne souhaitez pas créer Qt 5 à partir de sources, vous pouvez également utiliser les fichiers binarys de pré-construction.

Il existe également plusieurs fichiers binarys précompilés (x64) pour les différentes versions du compilateur disponibles sur le site Web de Tver-Soft .

J’ai finalement pu comstackr QT 5.1 (git) avec QWebKit sur Windows 8 x64 en utilisant Visual Studio 2012 et je pensais partager mon expérience avec ceux qui avaient aussi des problèmes.

A fait les étapes 1 et 2 comme indiqué dans le message ci-dessus. J’ai essayé de faire l’étape 3 mais SmartGit a sorti un tas de projets supplémentaires qui ne seraient pas compilés avec Qt5. J’ai été capable de résoudre la plupart des problèmes en clonant depuis un autre fork (par exemple https://qt.gitorious.org/qt/qt3d/ ), mais cela devenait trop fastidieux à faire pour chaque module supplémentaire, alors j’ai décidé de ne pas comstackr n’importe lequel d’entre eux.

La publication sur ICU prise en charge dans une version 32 bits de Qt5 avec le compilateur VS2012 entraîne l’échec de la génération Qt5; Webkit est également inviolable et m’a dit comment résoudre le problème de l’ICU.

Téléchargez le code source sur http://download.icu-project.org/files/icu4c/51.2/icu4c-51_2-src.zip et ajoutez la ligne

 #define U_CHARSET_IS_UTF8 1 

au fichier% ICU% \ source \ common \ unicode \ platform.h, où% ICU% est le chemin d’access au code source ICU.

Ouvrez le fichier% ICU% \ source \ allinone \ allinone.sln dans Visual Studio 2012 et comstackz. Ajoutez% ICU% \ bin à votre chemin

 set PATH=%ICU%\bin64;%PATH% 

Ensuite, j’ai exécuté la commande suivante dans le répertoire racine de QT

 configure -platform win32-msvc2012 -opengl desktop -opensource -debug-and-release -I %ICU%\include -L %ICU%\icu\lib64 -mp -qt-freetype -icu 

À ce stade, j’ai commencé à soupçonner que personne ne tentait de faire ce que je faisais, car nmake commençait à se plaindre des lignes inattendues dans les makefiles (toutes ayant l’extension DerivedSources, par exemple Makefile.JavaScriptCore.DerivedSources et Makefile.WebCore.DerivedSources). ))

 (set PATH=;%PATH%) && .... 

faire le PATH manuellement avant d’exécuter nmake et supprimer les caractères jusqu’à et y compris par exemple

  (set PATH=;%PATH%) && perl -ne "print $1" css\CSSPropertyNames.in ... 

Devient

 perl -ne "print $1" css\CSSPropertyNames.in ... 

Enfin, l’un de ces fichiers essaiera d’appeler win_flex.exe (ou win-flex.exe) au lieu de flex. Je l’ai changé en flex.exe et tout a finalement été compilé (j’ai dû le changer deux fois, car je pense que le fichier a été régénéré).

Une brève expérience avec un programme qui utilise QWebKit et liée à cette version m’amène à penser que tout va bien.

–Mettre à jour–

Juste pour être complet. Selon ce que signifie (set PATH = …;% PATH:) = ^)%) signifie-t-il dans un script shell Windows, et comment puis-je surmonter l’échec de cette ligne dans le contexte d’une génération nmake Qt5? (qui pointe vers http://qt-project.org/forums/viewthread/20605 ) la plupart des problèmes de Makefile devraient être résolus en utilisant jsom au lieu de nmake (bien que je me demande toujours de win-flex.exe)

comstackr Qt 5.5 avec visual studio 2015:

1- modefier configure.bat dans le répertoire qtbase pour qu’il puisse générer configure.exe (seulement les 18 premières lignes)

  @echo off set QTSRC=%~dp0 set QTDIR=%CD% rem if not exist %QTSRC%.gitignore goto sconf echo Please wait while bootstrapping configure ... for %%C in (cl.exe icl.exe g++.exe perl.exe) do set %%C=%%~$PATH:C rem if "%perl.exe%" == "" ( rem echo Perl not found in PATH. Aborting. >&2 rem exit /b 1 rem ) if not exist mkspecs ( md mkspecs if errorlevel 1 goto exit ) rem perl %QTSRC%bin\syncqt.pl -minimal -module QtCore -outdir "%QTDIR%" %QTSRC% rem if errorlevel 1 goto exit 

2- configure -opensource -confirm-license -mp -nomake examples -nomake tests -release -c++11 -no-warnings-are-errors -platform win32-msvc2015 -no-ltcg

3- nmake