IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Installation de wxWidgets sur Windows


précédentsommairesuivant

I. Introduction

I-A. Révisions

I-A-1. Document

Date

Révision article

Mai 2009

Rédaction

I-A-2. Outils

Ce tutoriel a été rédigé avec : wxWidgets-2.8.10.
Le code a été compilé et testé avec Microsoft Visual Studio 2008 (Version 9.0.21022.8 RTM) VC Express Edition. Le produit est disponible sur le site de MicrosoftSite de Microsoft pour le téléchargement de Visual C++ Express Edition.
Le code a été compilé et testé avec MinGW version 4.3.3. La dernière version disponible de MinGW se trouve sur le site officielSite officiel de téléchargement de MinGW. Cependant, les versions de MinGW sont souvent en retard sur les versions disponibles de GCC. Le site Twilight Dragon MediaVersion non officielle de MinGW propose des versions non officielles de MinGW avec des versions plus récentes de GCC. C'est la version 4.3.3 disponible sur ce site qui a été utilisée.

I-B. Avant-propos

wxWidgets offre un cadre de classes C++ (framework) pour créer des applications, en particulier avec une interface graphique évoluée, indépendamment de la plateforme (Windows, MAC, Linux). wxWidgets est distribué sous sa propre licence : wxWindows Library Licence, Version 3.1. Les termes de la licence reprennent ceux de la LGPL (GNU Library General Public Licence) modulo un certain nombre d'exceptions dans le but de l'assouplir. Notamment, le point 2 :

 
Sélectionnez
     2. The exception is that you may use, copy, link, modify and distribute
      under your own terms, binary object code versions of works based
      on the Library.

qui donne explicitement le droit de publier vos applications produites avec la bibliothèque sous la licence que vous souhaitez ; c'est-à-dire commerciale, libre ou autre ! Bien sûr, cela n'est pas contaminant à d'autres bibliothèques sous licence LGPL utilisée concomitamment avec wxWidgets.
Une des originalités de wxWidgets est d'offrir par défaut le rendu standard de la plateforme sur laquelle elle est compilée. Les applications construites pour Windows présentent les mêmes contrôles que ceux développés avec l'API Windows standard (win32 ou MFC), les applications MAC ont une I.H.M. MAC, etc. Une option permet aussi de choisir une I.H.M. spécifique, dite UNIVERSAL, lorsque l'application doit suivre une politique d'I.H.M. qui lui est propre et indépendante de la plateforme.
Pour plus d'information, vous pouvez consulter :

I-C. Remerciements

Je remercie Alp pour ses encouragements, dourouc05 pour ses courageuses relectures.
Enfin, d'une façon plus globale, je remercie les membres des forums de developpez.com qui par la qualité de leurs interventions m'ouvrent constamment de nouvelles pistes de réflexion sur ma pratique de développement.

I-D. Téléchargement

I-D-1. Les sources

Les sources sont disponibles sur le site de wxWidgetsSite de téléchargement de wxWidgets.
Le site propose soit de tout télécharger (wxAll), soit de télécharger un installeur pour Windows (wxMSW). Pour la rédaction de ce tutoriel, nous sommes partis de wxAll.

I-D-2. La documentation

Afin de disposer de la documentation hors ligne, le site de wxWidgets propose les téléchargements suivants :

  • HTML Docs : ensemble de fichiers HTML ;
  • MS HTML Help Docs : ensemble de fichiers au format CHM (les fichiers d'aide de Windows) ;
  • PDF Docs : ensemble de fichiers PDF ;
  • WinHelp Docs : ensemble de fichiers au format HLP ;
  • wxHTML Help Docs : ensemble de fichiers au format HTB.

Nous ne nous occuperons que des fichiers CHM. Les autres documentations suivent le même schéma.
La documentation reste disponible en ligne : site wxWidgets en ligne de documentationDocumentation en ligne

I-E. Extraire les fichiers

Pour commencer, je vous propose de décompresser le fichier contenant les sources vers le répertoire de votre choix. Le fichier compressé contient un répertoire wxWidgets-2.8.10 composé de l'ensemble des sous-répertoires de wxWidgets :

Structure du fichier compressé contenant les sources
Structure du fichier compressé contenant les sources

Décompressez ce fichier vers le répertoire de votre choix. Dans ce tutoriel, nous supposons qu'il s'agit de « D: », nous obtenons donc la hiérarchie suivante :

Hiérarchie des répertoires sources
Hiérarchie des répertoires sources

La documentation précise bien que le chemin d'installation ne doit pas contenir d'espaces !

Ensuite, nous désarchivons la documentation. En choisissant le même répertoire que pour les sources, la documentation est directement insérée dans le répertoire adéquat : « \wxWidgets-2.8.10\docs ». Ainsi, en désarchivant MS HTML Help Docs, le répertoire « \wxWidgets-2.8.10\docs\htmlhelp » est créé. Il contient les fichiers d'aide .chm.

Liste des fichiers d'aide
Les fichiers d'aide

I-F. Les différentes compilations

On peut distinguer différentes compilations orthogonales entre elles :

  • DEBUG ou RELEASE : pour opter entre la version debug ou release ;
  • STATIC ou SHARED : pour obtenir des bibliothèques statiques ou DLL. La version statique permet de résoudre les liens à la compilation, pendant la phase d'édition des liens. Votre exécutable peut alors être distribué tel quel sans DLL supplémentaire. La contrepartie est un exécutable de taille conséquente. En mode partagé (SHARED), les DLL sont générées avec le .lib associé. L'édition de lien est alors partielle et vous devez distribuer votre exécutable avec les DLL ;
  • UNICODE ou non : pour générer une version UNICODE ou non de la bibliothèque ;
  • UNIVERSAL ou MSW : permet de choisir entre un rendu propre à wxWidgets ou le rendu de la plateforme (Windows) ;
  • MONOLITHIC : génère une seule et unique bibliothèque ou plusieurs bibliothèques par sujet (I.H.M., XML, réseau, etc.).

Cela fait plus d'une trentaine de générations possibles. Il est clair que toutes ne sont pas nécessaires dans un projet. En général, les versions DEBUG et RELEASE sont générées. Les autres options sont fixées dès le début pour le projet voire pour tous les projets.
Dans le cadre de ce tutoriel, nous allons générer les versions DEBUG et RELEASE des bibliothèques STATIC avec UNICODE, le port MSW et en plusieurs bibliothèques.

Le répertoire « \wxWidgets-2.8.10\build\msw » contient les fichiers nécessaires à la génération :

  • les fichiers de configuration ;
  • les makefile ;
  • pour Visual C++, les fichiers projets.

Chacun de ces fichiers est lié au compilateur utilisé pour la génération. Nous allons donc voir ci-dessous comment procéder.


précédentsommairesuivant

Copyright © 2009 3DArchi. Aucune reproduction, même partielle, ne peut être faite de ce site ni de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.