Windows/fr

Ce guide documente la méthode de compilation de RawTherapee en versions 32 bits et 64 bits pour Windows en utilisant le runtime MinGW-w64. Commencez par installer et mettre à jour MSYS2 à l'aide des instructions sur. Puis, exécuter les commandes suivantes en utilisant soit MinGW-w64 Win32 Shell ou MinGW-w64 Win64 Shell suivant si vous désirez compiler une version 32 bits ou 64 bits.

Installation des outils et des bibliothèques
Premièrement, installer quelques outils divers :  $ pacman -S tar gzip nano make diffutils intltool git

Puis installer les outils de développement nécessaires :  $ pacman -S mingw-w64-i686-gcc mingw-w64-i686-gdb mingw-w64-i686-make mingw-w64-i686-pkg-config mingw-w64-i686-cmake $ pacman -S mingw-w64-x86_64-gcc mingw-w64-x86_64-gdb mingw-w64-x86_64-make mingw-w64-x86_64-pkg-config mingw-w64-x86_64-cmake et les bibliothèques requises :  $ pacman -S mingw-w64-i686-gtkmm mingw-w64-i686-gtkmm3 mingw-w64-i686-lcms2 mingw-w64-i686-fftw $ pacman -S mingw-w64-x86_64-gtkmm mingw-w64-x86_64-gtkmm3 mingw-w64-x86_64-lcms2 mingw-w64-x86_64-fftw
 * 1) win32
 * 1) win64
 * 1) win32
 * 1) win64

Télécharger et compiler libiptcdata
La bibliothèque libiptcdata n'est plus fournie par MSYS2, cependant, elle est téléchargeable et configurable en utilisant :  $ curl -LO http://downloads.sourceforge.net/project/libiptcdata/libiptcdata/1.0.4/libiptcdata-1.0.4.tar.gz $ tar xzf libiptcdata-1.0.4.tar.gz $ cd libiptcdata-1.0.4

$ ./configure --prefix=/mingw32 $ ./configure --prefix=/mingw64
 * 1) win32
 * 1) win64

Ensuite Makefile doit être ouvert avec un éditeur de texte pour retirer iptc et docs des listes nommées SUBDIRS et DIST_SUBDIRS sinon, la compilation ou l'installation échouera.  $ nano Makefile

DIST_SUBDIRS = m4 libiptcdata po iptc docs win python DIST_SUBDIRS = m4 libiptcdata po win python
 * 1) Remplacer
 * 1) par

SUBDIRS = m4 libiptcdata po iptc docs win $(MAYBE_PYTHONLIB) SUBDIRS = m4 libiptcdata po win $(MAYBE_PYTHONLIB)
 * 1) et remplacer
 * 1) par

Enfin, compiler et installer la bibliothèque :  $ make $ make install $ cd

Télécharger et installer Clearlooks
Les versions de RawTherapee qui utillisent la version 2 de Gtk+ nécessitent le moteur de thème Clearlooks, lequel peut être téléchargé et compilé avec :  $ curl -LO http://sources.archlinux.org/other/gtk-engines/gtk-engines-2.21.0.tar.gz $ tar xzf gtk-engines-2.21.0.tar.gz $ cd gtk-engines-2.21.0

$ ./configure --prefix=/mingw32 --disable-all --enable-clearlooks $ ./configure --prefix=/mingw64 --disable-all --enable-clearlooks
 * 1) win32
 * 1) win64

$ make $ make install $ cd

Cloner et compiler RawTherapee
D'abord cloner le dépôt Git de RawTherapee :  $ git clone http://github.com/Beep6581/RawTherapee.git $ cd RawTherapee et optionnellement utiliser une branche spécifique si vous ne souhaitez pas compiler la branche master par défaut, par exemple :  $ git checkout gtk3

Puis, créer une répertoire séparé pour la compilation :  $ mkdir build $ cd build et exécuter CMake et Make  $ cmake -G "MSYS Makefiles" -DCMAKE_BUILD_TYPE="debug" -DPROC_TARGET_NUMBER="2" -DBUILD_BUNDLE="ON" -DCMAKE_INSTALL_PREFIX="." -DBINDIR="." -DDATADIR="." -DCACHE_NAME_SUFFIX=4 .. $ make -j8 $ make install

Référez vous à l'article Linux pour avoir une explication des diverses options passées à CMake et Make.

Si vous réalisez une compilation optimisée, par exemple release ou relwithdebinfo, pour les anciennes versions 32 bits de Windows, comme XP, vous aurez besoin d'ajouter le drapeau de compilation -mstackrealign :  -DCMAKE_C_FLAGS="-mstackrealign" -DCMAKE_CXX_FLAGS="-mstackrealign"

Copier RawTherapee et les DLL requises
RawTherapee peut maintenant être démarré depuis la ligne de commande de MSYS2 :  $ cd debug $ cd release $ ./rawtherapee.exe
 * 1) pour les compilations debug
 * 1) pour les compilations release

Le gestionnaire de fichiers peut être utilisé pour copier le contenu de \home\\RawTherapee\build\ avec les DLL nécessaires de <MSYS2>\<mingw32|mingw64>\bin dans un répertoire d'installation de RawTherapee, où <MSYS2> est le répertoire d'installation de MSYS2 et <User> le nom de l'utilisateur Windows.

Voici une liste (peut-être incomplète) des DLL requises : <pre style="white-space: pre-wrap"> libatk-1.0-0.dll libatkmm-1.6-1.dll libbz2-1.dll libcairo-2.dll libcairo-gobject-2.dll libcairomm-1.0-1.dll libepoxy-0.dll libexpat-1.dll libffi-6.dll libfftw3f-3.dll libfontconfig-1.dll libfreetype-6.dll libgcc_s_dw2-1.dll|libgcc_s_seh-1.dll libgdk-3-0.dll libgdk-win32-2.0-0.dll libgdkmm-2.4-1.dll libgdkmm-3.0-1.dll libgdk_pixbuf-2.0-0.dll libgio-2.0-0.dll libgiomm-2.4-1.dll libglib-2.0-0.dll libglibmm-2.4-1.dll libgmodule-2.0-0.dll libgobject-2.0-0.dll libgomp-1.dll libgtk-3-0.dll libgtk-win32-2.0-0.dll libgtkmm-2.4-1.dll libgtkmm-3.0-1.dll libharfbuzz-0.dll libiconv-2.dll libintl-8.dll libjpeg-8.dll liblcms2-2.dll liblzma-5.dll libpango-1.0-0.dll libpangocairo-1.0-0.dll libpangoft2-1.0-0.dll libpangomm-1.4-1.dll libpangowin32-1.0-0.dll libpixman-1-0.dll libpng16-16.dll libsigc-2.0-0.dll libstdc++-6.dll libtiff-5.dll libwinpthread-1.dll zlib1.dll

Les fichiers suivants doivent aussi être copiés : <pre style="white-space: pre-wrap"> \bin\gspawn-<win32|win64>-helper.exe ->. \bin\gspawn-<win32|win64>-helper-console.exe ->.

\lib\gtk-2.0\include ->. \lib\gtk-2.0\modules ->. \lib\gtk-2.0\2.10.0\engines ->.

\share\glib-2.0\schemas\gschemas.compiled -> .\share\glib-2.0\schemas où   est <MSYS2>\<mingw32|mingw64> de ci-dessus et . est le répertoire d'installation.

Création d'un paquetage distribuable
Si vous avez l'intention de distribuer des paquetages de Rawtherapee pour la plateforme Windows, vous devez tout d'abord vous assurer que Rawtherapee sera compilé avec pour cible le processeur générique. Pour cela, indiquer  dans la commande cmake.

Pendant la compilation, un script nommé WindowsInnoSetup.iss est créé dans le répertoire d'installation de Rawtherapee. Ce script est utilisé par Inno Setup, un programme qui est utilisé pour générer des installateurs pour les programmes Windows. Il est conseillé de télécharger la version Unicode pour éviter les problèmes avec certaines langues. L'actuel script WindowsInnoSetup.iss est conçu pour la branche maîtresse actuelle (Gtk+2). Si vous désirez créer un paquetage depuis la branche Gtk3, vous aurez besoin d'éditer le script et de remplacer la ligne :

<pre style="white-space: pre-wrap"> Source: "{#MyBuildBasePath}\lib\*"; DestDir: "{app}\lib\"; Flags: ignoreversion recursesubdirs createallsubdirs

par

<pre style="white-space: pre-wrap"> Source: "{#MyBuildBasePath}\share\*"; DestDir: "{app}\share\"; Flags: ignoreversion recursesubdirs createallsubdirs

ainsi les icones et les schémas seront copiés dans le paquetage.

Pour aider les utilisateurs à écrire de bons rapports de bogues, les mainteneurs de paquetages sont encouragés à produire des compilations Debug en parallèle avec chacune de leur compilations Release, et de les rassembler avec l'exécutable du debugger gdb. Les binaires Windows du debugger (gdb.exe) peuvent être téléchargés depuis ici dans les versions 32 et 64 bits. Le binaire gdb.exe doit être copié dans le répertoire d'installation de Rawtherapee et, en cas d'utilisation de Inno Setup pour générer le paquetage, le script WindowsInnoSetup.iss doit être édité en ajoutant la ligne suivante auprès de la ligne 121 du script :

<pre style="white-space: pre-wrap"> Source: "{#MyBuildBasePath}\gdb.exe"; DestDir: "{app}"; Flags: ignoreversion

Notez que GDB est un programme publié sous la licence GNU GPL, son code source se trouve à http://www.gnu.org/software/gdb/.

Maintenant que tout est configuré, pour créer le paquetage, cliquer droit sur le script WindowsInnoSetup.iss et choisir Compile dans le menu contextuel. Il générera automatiquement l'installateur et le placera dans le répertoire parent. Pour rendre votre nouveau paquetage compatible avec l'"uploader" du Site Web officiel de Rawtherapee, créez une archive zip dans laquelle vous placez ensemble l'installer nouvellement créé et les AboutThisBuild.txt correspondants qui doivent se trouver à la même place. Nommer l'archive zip résultante selon cet exemple : RawTherapee_<WinXP|WinVista>_<32|64>_branch_buildtype_version.zip (par exemple, Rawtherapee_WinVista_64_gtk3_Release_4.2.730.zip).