MS Windows from Source Code Tarball

Avertissement

La dernière version de Gwyddion pouvant être compilée avec MSVC6 est 2.22.

La système de compilation de Gwyddion sous MS Windows nécessite le compilateur Microsoft Visual C++ (MSVC) (la version 6 étant testée et recommandée, bien qu'elle soit un peu ancienne). Il consiste en plusieurs fichiers de commande nmake (makefiles), ce qui veut dire que la compilation se fait en ligne de commande. Cette approche a plusieurs avantages du point de vue de la reproductibilité et de l'automatisation de la procédure. De plus, elle permet une synchronisation aisée des systèmes de compilation sous Unix et MS Windows. La nécessité d'utiliser la ligne de commande peut être vue comme un désavantage, mais elle rend tout de même la procédure de compilation plutôt simple, même si l'on est peu familier de la ligne de commande.

En supplément de MSVC, il vous faut installer l'environnement de développement Gtk+. Là encore nous vous recommandons le paquet GladeWin32. Notez qu'il contient l'environnement de lancement, vous n'avez donc pas à installer celui-ci si vous installer l'environnement de développement.

Décompression

Décompressez les archives du code source avec votre programme de décompression favori ou avec l'explorateur de fichiers. Les archives compressées avec bzip2 (.bz2) sont bien plus petites que celles compressées avec gzip (.gz), toutefois le support de la compresssion bzip2 est bien répandu que gzip sous MS Windows. Certains programmes récents supportent les deux, par exemple 7zip qui est aussi un logiciel libre.

La décompression créera le dossier gwyddion-2.19 (où 2.19 sera remplacé par le numéro de version actuel) dans lequel toutes les étapes de compilation auront lieu.

Configuration

Ouvrez le fichier make.msc dans un éditeur de texte. Ce fichier démarre à peu de chose près comme suit :

# @(#) $Id: make.msc 8812 2008-12-02 08:49:22Z xhorak $
#
# XXX: Set following to your Gtk+-Development and MSVC paths
#
# The uncommented paths should work for default MSVC 6 installation and for
# default GladeWin32 installation.
# If you have GtkGLext separate from Gtk+, define GTKGLEXT_TOP accordingly.
# If you have LibXML2 separate from Gtk+, define LIBXML2_TOP accordingly.
GTK_TOP = C:\Gtk
GTKGLEXT_TOP = $(GTK_TOP)
LIBXML2_TOP = $(GTK_TOP)
#GTKGLEXT_TOP = C:\GtkGLExt\1.0
#LIBXML2_TOP = C:\libxml2
MSC_TOP = C:\Program Files\Microsoft Visual Studio\VC98

Vérifiez et corrigez les chemins selon les instructions. En général, aucune modification n'est nécessaire, car les chemins donnés dans le fichier correspondent aux chemins d'installation par défaut de chaque programme.

GTK_TOP
Il doit pointer vers le premier niveau du répertoire d'installation de Gtk+, il s'agit du répertoire contenant les sous-dossiers bin, lib, share, etc. Nous ferons par la suite référence à cette valeur avec $(GTK_TOP) .
GTKGLEXT_TOP
Il doit pointer vers le premier niveau du répertoire d'installation de GtkGLExt. Il diffère de $(GTK_TOP) uniquement si vous n'utilisez pas GladeWin32 et que vous avez installé GtkGLExt séparément.
LIBXML2_TOP
Il doit pointer vers le premier niveau du répertoire d'installation de LibXML2 . Il diffère de $(GTK_TOP) uniquement si vous n'utilisez pas GladeWin32 et que vous avez installé LibXML2 séparément.
MSC_TOP
Il doit pointer vers le premier niveau du répertoire d'installation de MSVC.

Lancez la fenêtre de commande (MS-DOS), puis allez dans le répertoire source et lancez vcvars32.bat. Ce fichier de commande est fourni avec MSVC, il permet de définir certaines variables nécessaires au complilateur et au linker utilisés en ligne de commande, il aussi de les rendre directement exécutables en réglant PATH. Notez que vcvars32.bat peut ne pas se trouver dans PATH, mais il doit être aisément repérable.

Compilation

Lancez

nmake -f makefile.msc

pour compiler Gwyddion et

nmake -f makefile.msc install

pour l'installer dans un répertoire temporaire, à savoir le sous-dossier inst (créé par cette commande). Au cas où la seconde étape se déroulerais mal et que vous vouliez recommencer, pensez à supprimer le répertoire inst ainsi que le fichier inst.stamp pour démarrer proprement.

Installation

La structure du répertoire temporaire inst est identique à celle de l'installation finale. Vous pouvez ainsi lancer Gwyddion directement à partir de ce répertoire (gwyddion.exe se trouve directement dans inst). Si vous n'avez jamais lancé Gwyddion auparavant, il ne trouvera pas les librairies Gtk+ (DLLs) nécessaires. Il faudra dans ce cas lancer regedit, créer la clé Path dans

HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\Current Version\App Paths\Gwyddion.exe

et y mettre $(GTK_TOP)\lib;$(GTK_TOP)\bin (là aussi $(GTK_TOP) doit être remplacé par le dossier correspondant défini dans make.msc, ne pas y mettre litéralement « $(GTK_TOP) »). Si GtkGLExt et/ou LibXML2 ont été installés séparément, ajoutez aussi les dossiers lib et bin, séparés par un point-virgule. Si vous ne pouvez pas modifier le registre global HKEY_LOCAL_MACHINE, vous pouvez modifier HKEY_CURRENT_USER pour l'utilisateur courant uniquement.

Vous pouvez alors lancer Gwyddion directement à partir du répertoire inst ou copier celui-ci vers un autre emplacement, en le renommant si besoin.

Installeurs

Pour créer un installeur il vous faut Inno Setup, version 4 ou plus. Ouvrez inst/gwyddion.iss puis compilez l'installeur, ce qui créera Gwyddion-2.19.exe (où 2.19 sera remplacé par le numéro de version actuel), là encore dans inst. Vous pouvez répéter cette procédure avec inst/gwyddion-devel.iss pour créer si besoin Gwyddion-Development-2.19.exe.