Compilation sous Windows de la version 3.9.3

Tout ce qui est lié au développement du logiciel
Post Reply
vercors
Posts: 1
Joined: 29 Nov 2017, 10:55

Compilation sous Windows de la version 3.9.3

Post by vercors » 29 Nov 2017, 11:54

kits :
- Qt 5.4.1 MSVC2013 OpenGL 32bit
- OpenCV-2.4.9
- boost_1_62_0

J'ai ouvert actiona.pro (versio 3.9.3) avec QtCreator version 3.3.1.
Dans Environnement système de Compilation j'ai ajouté les variables suivantes:

OPENCV_LIB= C:\OpenCV-2.4.9\build\x86\vc12\lib
OPENCV_INCLUDE = C:\OpenCV-2.4.9\include\opencv2
OPENCV_LIB_IMGPROC=opencv_imgproc249
BOOST_INCLUDE = C:\thirdparty\vs2013\x86\boost_1_62_0\boost
LIBPATH =
C:\windows\Microsoft.NET\Framework\v4.0.30319;
C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\LIB;
C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\ATLMFC\LIB;C:\Program Files (x86)\Windows Kits\8.1\References\CommonConfiguration\Neutral;
C:\Program Files (x86)\Microsoft SDKs\Windows\v8.1\ExtensionSDKs\Microsoft.VCLibs\12.0\References\CommonConfiguration\neutral;
C:\thirdparty\vs2013\x86\boost_1_62_0\stage\lib;
C:\OpenCV-2.4.9\build\x86\vc12\lib[/list]


La ligne de commande de compilation:
qmake.exe C:\Users\vercors\Documents\_Qt\Actionna\actiona.pro -r -spec win32-msvc2013 "CONFIG+=debug" "OPENCV_LIB_CORE=$OPENCV_LIB_CORE" "OPENCV_LIB_IMGPROC=$OPENCV_LIB_IMGPROC"


Pour la compilation j'ai lancé les 3 étapes suivantes:
- Tout Nettoyer
- Executer QMake
- Tout Compiler

Voici la sortie de compilation simplifiée (étape Tout Compiler seule):

11:35:40: Exécution des étapes pour le projet actiona...
11:35:40: Configuration inchangée, étape qmake sautée.
11:35:40: Débute : "C:\Qt\Qt5.4.1.msvc\Tools\QtCreator\bin\jom.exe"
cd tools\ && ( if not exist Makefile C:\Qt\Qt5.4.1.msvc\5.4\msvc2013_opengl\bin\qmake.exe C:\Users\vercors\Documents\_Qt\Actionna\tools\tools.pro -spec win32-msvc2013 CONFIG+=debug OPENCV_LIB_CORE=PENCV_LIB_CORE OPENCV_LIB_IMGPROC=PENCV_LIB_IMGPROC -o Makefile ) && C:\Qt\Qt5.4.1.msvc\Tools\QtCreator\bin\jom.exe -f Makefile
C:\Qt\Qt5.4.1.msvc\Tools\QtCreator\bin\jom.exe -f Makefile.Debug
cd actiontools\ && ( if not exist Makefile C:\Qt\Qt5.4.1.msvc\5.4\msvc2013_opengl\bin\qmake.exe C:\Users\vercors\Documents\_Qt\Actionna\actiontools\actiontools.pro -spec win32-msvc2013 CONFIG+=debug OPENCV_LIB_CORE=PENCV_LIB_CORE OPENCV_LIB_IMGPROC=PENCV_LIB_IMGPROC -o Makefile ) && C:\Qt\Qt5.4.1.msvc\Tools\QtCreator\bin\jom.exe -f Makefile
C:\Qt\Qt5.4.1.msvc\Tools\QtCreator\bin\jom.exe -f Makefile.Debug
link /NOLOGO /DYNAMICBASE /NXCOMPAT /DEBUG /DLL /SUBSYSTEM:WINDOWS /MANIFEST:embed /OUT:..\actiontools.dll @C:\Users\vercors\AppData\Local\Temp\actiontools.dll.7860.390.jom
Microsoft (R) Incremental Linker Version 12.00.40629.0
Copyright (C) Microsoft Corporation. All rights reserved.

jom: C:\Users\vercors\Documents\_Qt\build-actiona-Desktop_Qt_5_4_1_MSVC2013_OpenGL_32bit-Debug\actiontools\Makefile.Debug [..\actiontools.dll] Error 1146
LINK : fatal error LNK1146: no argument specified with option '/LIBPATH:'
jom: C:\Users\vercors\Documents\_Qt\build-actiona-Desktop_Qt_5_4_1_MSVC2013_OpenGL_32bit-Debug\actiontools\Makefile [debug] Error 2
jom: C:\Users\vercors\Documents\_Qt\build-actiona-Desktop_Qt_5_4_1_MSVC2013_OpenGL_32bit-Debug\Makefile [sub-actiontools-make_first-ordered] Error 2
11:35:41: Le processus "C:\Qt\Qt5.4.1.msvc\Tools\QtCreator\bin\jom.exe" s'est terminé avec le code 2.
Erreur lors de la compilation/déploiement du projet actiona (kit : Desktop Qt 5.4.1 MSVC2013 OpenGL 32bit)
When executing step "Make"
11:35:41: Temps écoulé : 00:02.

Dans la fénêtre problème:
:-1: erreur : LNK1146: no argument specified with option '/LIBPATH:'
Avez-vous une idée pour résoudre cette erreur ?

clava
Posts: 2
Joined: 16 Mar 2018, 14:40

Re: Compilation sous Windows de la version 3.9.3

Post by clava » 16 Mar 2018, 15:31

Si ça peut aider quelqu'un, voici où j'en suis dans ma tentative de compilation d'actiona 3.9.3 sous windows :

Avec les éléments suivants :
- QtCreator version 4.5.1 (Qt 5.10.1 MSVC2015 OpenGL 32bit)
- OpenCV-2.4.9
- boost_1_66_0

Dans Qt Creator, après avoir ouvert actiona.pro :
1) Dans l'onglet "Projets" sur la gauche, puis "Etapes de compilation" de "qmake", dans "Arguments supplémentaires", ajout de cette ligne :
"OPENCV_LIB=C:\opencv\build\x86\vc12\lib" "OPENCV_INCLUDE=C:\opencv\build\include" "OPENCV_LIB_CORE=opencv_core249" "OPENCV_LIB_IMGPROC=opencv_imgproc249" "BOOST_INCLUDE=C:\boost_1_66_0"
2) Je choisi ensuite de le compiler en mode "release", puis de l’exécuter en mode "gui" avec l'onglet ressemblant à un écran sur la gauche.
3) Je le compile, c'est OK !
4) je l'execute depuis Qt Creator => Actiona s'ouvre correctement, seul problème il est en anglais.

Mes questions sont :
1) Comment le mettre en français ?
2) Comment générer un .exe fonctionnel ?
J'ai tenté de lancer "actiona.exe" depuis le dossier du build du projet, mais il ne fonctionne pas, alors que le lancement depuis Qt Creator fonctionne.

clava
Posts: 2
Joined: 16 Mar 2018, 14:40

Re: Compilation sous Windows de la version 3.9.3

Post by clava » 19 Mar 2018, 11:01

J'ai réussi à lancer le .exe, de la façon suivante :

1) Copier les fichiers opencv_core249.lib et opencv_imgproc249.lib (249 chez moi mais dépend de la version de opencv) du dossier d'installation de opencv (chez moi C:\opencv\build\x86\vc12\lib) vers le dossier du build.

2) J'ai regardé le contenu d'une installation d'Actiona 3.9.3 et j'en ai déduis cette liste de dll à rajouter dans le dossier du build :
Rajouter également les fichiers suivant provenant du dossier d'installation de Qt (chez moi C:\Qt\Qt5.10.1\5.10.1\msvc2015\bin) :
- Qt5Core.dll
- Qt5Gui.dll
- Qt5Multimedia.dll
- Qt5MultimediaWidgets.dll
- Qt5Network.dll
- Qt5OpenGL.dll
- Qt5Positionning.dll
- Qt5PrintSupport.dll
- Qt5Qml.dll
- Qt5Quick.dll
- Qt5Script.dll
- Qt5ScriptTools.dll
- Qt5Sensors.dll
- Qt5Sql.dll
- Qt5Svg.dll
- Qt5WebChannel.dll
- Qt5WebKit.dll
- Qt5WebKitWidgets.dll
- Qt5Widgets.dll
- Qt5Wml.dll
- Qt5XmlPatterns.dll

Il me reste maintenant le problème de la langue à gérer.

User avatar
Jmgr
Admin
Posts: 1632
Joined: 07 Dec 2005, 15:45
Contact:

Re: Compilation sous Windows de la version 3.9.3

Post by Jmgr » 08 May 2018, 17:38

Bonjour, et désolé de la réponse tardive.

1) Il doit plutôt s'agir des fichiers .dll que .lib, non ?

2) Oui, il manquait des DLL pour que le programme puisse de lancer en dehors de Qt Creator.

Pour la langue, il faut lancer le programme "lrelease" contenu dans le dossier de Qt et passer en paramètre chaque fichier .pro d'Actiona. Cela va générer des fichiers .qm qu'il faut ensuite placer dans un dossier "locale".
"My software never has bugs. It just develops random features."

Post Reply