                                   Tux Paint
                                 version 0.9.30
                        Documentation sur l'installation

        Copyright © 2002-2023 by divers contributeurs; see AUTHORS.txt.
                             https://tuxpaint.org/

                                  mai 13, 2023

           +--------------------------------------------------------+
           |Table des matières                                      |
           |--------------------------------------------------------|
           |  * Exigences                                           |
           |       * Biliothèque Simple DirectMedia Layer (libSDL)  |
           |       * Autres bibliothèques                           |
           |  * Compilation et installation                         |
           |       * Windows                                        |
           |       * Linux/Unix                                     |
           |       * macOS                                          |
           |       * Android                                        |
           |       * Haiku                                          |
           |  * Débogage                                            |
           |  * Désinstallation de Tux Paint                        |
           |       * Windows                                        |
           |       * macOS                                          |
           |       * Linux                                          |
           +--------------------------------------------------------+

                                   Exigences

Biliothèque Simple DirectMedia Layer (libSDL)

   Tux Paint nécessite la bibliothèque de couches DirectMedia simple
   (libSDL), une bibliothèque de programmation multimédia Open Source
   disponible sous la Licence publique générale limitée GNU (LGPL).

   Along with libSDL, Tux Paint depends on a number of other SDL 'helper'
   libraries: SDL_Image (for graphics files), SDL_gfx (for some graphical
   functions, like rotation), SDL_TTF and SDL2_Pango (for True Type Font
   support) and, optionally, SDL_Mixer (for sound effects).

   Les bibliothèques SDL sont disponibles en tant que code source, ou en tant
   que paquets RPM ou Debian pour diverses distributions de Linux. Ils
   peuvent être téléchargés à partir de :

     * libSDL: http://www.libsdl.org/
     * SDL_image: https://github.com/libsdl-org/SDL_image
     * SDL_gfx:
       https://www.ferzkopp.net/wordpress/2016/01/02/sdl_gfx-sdl2_gfx/
       (https://sourceforge.net/projects/sdlgfx/)
     * SDL_ttf: https://github.com/libsdl-org/SDL_ttf
     * SDL2_Pango: https://github.com/markuskimius/SDL2_Pango
     * SDL_mixer: https://github.com/libsdl-org/SDL_mixer (optionnel)

   Elles sont aussi parmi les paquets inclus dans votre distribution (par ex.
   sur le media d'installation, ou via la maintenance de vos logiciels comme
   la commande apt de Debian).

   💡 Note: When installing libraries from packages, be sure to ALSO install
   the development versions of the packages. (For example, install both
   "SDL2-2.24.0.rpm" and "SDL2-devel-2.24.0.rpm".)

  Autres bibliothèques

   Tux Paint profite également d'un certain nombre d'autres bibliothèques
   gratuites LGPL. Sous Linux, tout comme SDL, ils devraient être soit déjà
   installées, soit facilement disponibles avec votre distribution Linux.

   libPNG

           Tux Paint utilise le format PNG (Portable Network Graphics) pour
           ses fichiers de données. SDL_image nécessitera l'installation de
           libPNG.

           http://www.libpng.org/pub/png/libpng.html

   gettext

           Tux Paint utilise les paramètres régionaux de votre système avec
           la bibliothèque "gettext" pour prendre en charge plusieurs langues
           (par exemple, l'espagnol). Vous aurez besoin d'installer la
           bibliothèque de gettext.

           http://www.gnu.org/software/gettext/

   libpaper (Linux/Unix uniquement)

           Depuis Tux Paint 0.9.17, Tux Paint peut déterminer le format de
           papier par défaut (par exemple, A4 ou Lettre), ou peut être invité
           à utiliser un format particulier, ceci grâce à libpaper.

           https://github.com/naota/libpaper

   FriBiDi

           Les outils "Texte" et "Étiquette" de Tux Paint supportent les
           langues bidirectionnelles, grâce à la bibliothèque "FriBidi".

           http://fribidi.org/

   Support des graphismes SVG

           À partir de Tux Paint 0.9.17, Tux Paint peut prendre en charge les
           images SVG (Scalable Vector Graphics) pour les tampons. Deux
           ensembles de bibliothèques sont pris en charge et le support SVG
           peut être complètement désactivé (via "make SVG_LIB:==")

                librsvg-2 & libCairo2 (nouvelles bibliothèques)
                           * libRSVG 2: http://librsvg.sourceforge.net/
                           * Cairo 2: http://www.cairographics.org/
                           * Celles-ci dépendent aussi de :
                                * GdkPixbuf & GLib: http://www.gtk.org/
                                * Pango: http://www.pango.org/

                Anciennes bibliothèques
                           * libcairo1, libsvg1, & libsvg-cairo1:
                             http://www.cairographics.org/
                           * Celles-ci dépendent aussi de :
                                * libxml2:
                                  https://gitlab.gnome.org/GNOME/libxml2

   Fonction d'exportation de GIF animés

           Pour prendre en compte l'exportation de GIF animés (diaporama), la
           bibliothèque "libimagequant" (issue du projet "pngquant" est
           nécessaire.

           https://github.com/ImageOptim/libimagequant

   Outils NetPBM (optionnel) ne sont plus utilisés par défaut

           📜 Sous Linux et Unix, les anciennes versions de Tux Paint
           utilisaient les outils NetPBM comme aide à l'impression. (Un PNG
           est généré par TuxPaint et converti en PostScript en utilisant en
           ligne de commande les outils NetPBM pngtopnm et pnmtops.)

           http://netpbm.sourceforge.net/

                          Compilation et installation

   Tux Paint est publié sous la licence publique générale GNU (GPL) (voir
   "COPYING.txt" pour plus de détails), et donc le 'code source' du programme
   est disponible gratuitement.

       ------------------------------------------------------------------

Windows

   juillet 10, 2022 Shin-ichi TOYAMA <dolphin6k@wmail.plala.or.jp>

  Réglages pour compilation

   Depuis février 2005 (à partir de Tux Paint 0.9.15), le "Makefile" inclut
   la prise en charge de la construction sur un système Windows à l'aide de
   MinGW/MSYS (https://sourceforge.net/projects/msys2/).

   Beaucoup d'outils et de bibliothèques sont nécessaires pour élaborer Tux
   Paint. Le système de gestion de paquet "pacman" apporte une aide pour
   installer automatiquement, en résolvant les dépendances nombreuses.

    MYSYS2

   Téléchargez le dernier environnement MSYS2 à partir de
   https://www.msys2.org/ et installez-le où vous voulez (par défaut
   "C:\msys64")

   Open the MSYS2 shell from the "Start Menu" → "MSYS2 64bit" → "MSYS2 MSYS"
   and execute following command:

     $ yes "" | pacman -Syu

   This will update core system and the window will close automatically. Open
   the msys2 shell again and execute following command to finish remaining
   updating process.

     $ yes "" | pacman -Syu

   Sous le shell MSYS2, exécutez la commande suivante pour installer outils
   basiques pour le développement :

     $ yes "" | pacman -S make automake-wrapper autoconf-wrapper libtool git
     zip patch gperf dos2unix

   Allez à la prochaine section "chaînes d'outils MinGW 64bit (x86_64) ", ou
   bien à la section "chaînes d'outils MinGW 32bit (i686)" si vous ne voulez
   qu'un environnement de travail 32bit.

            -------------------------------------------------------

    MinGW 64bit (x86_64) compiler and tools

   Sous le shell MSYS2, exécutez la commande suivante pour installer 64bit
   compiler and basic development tools :

     $ yes "" | pacman -S mingw-w64-x86_64-{gcc,pkgconf,ntldd-git}

   "ntldd" est un petit outil qui examine les fichiers exécutables de windows
   en vue de lister les fichiers DLL (.dll) qui leur sont nécessaires. Le
   process de fabrication de Tux Paint pour fournir des fichiers binaires
   s'en sert pour trouver les fichiers .dll requis.

    64bit (x86_64) dependency libraries for Tux Paint and Tux Paint Config

   You can install tools and libraries required for compiling Tux Paint and
   Tux Paint Config on MSYS2/MINGW using "pacman" except for SDL2_Pango and
   libunibreak.

   FLTK is a cross-platform GUI toolkit used by "Tux Paint Config". You can
   skip installing it if you are only building "Tux Paint".

     $ pacman -S mingw-w64-x86_64-SDL_{image,ttf,gfx}
     $ pacman -S mingw-w64-x86_64-{librsvg,fribidi,libimagequant,fltk}

   💡 Nota : Fermez l'interpréteur de commandes avant de passer à la suite.

    Install SDL2_Pango and libunibreak on the 64bit environment

   SDL2_Pango and libunibreak should be installed manually.

   This time, use the MinGW "64bit" shell. Open the shell from the "Start
   Menu" → "MSYS2 64bit" → "MSYS2 MinGW 64-bit"

      SDL2_Pango

   You can fetch the source code from the Mark K. Kim's git repositry,
   compile and install it as follows.

     $ git clone https://github.com/markuskimius/SDL2_Pango
     $ cd SDL2_Pango
     $ ./configure --prefix=/mingw64 && make && make install

      libunibreak

   libunibreak is required for compiling Tux Paint Config. You can skip
   installing it if you are only building "Tux Paint".

   You can fetch the source code from the git repositry and compile it as
   follows.

     $ git clone https://github.com/adah1972/libunibreak libunibreak
     $ cd libunibreak
     $ ./augogen.sh --prefix=/mingw64 && make && make install

   Aller à la prochaine section "chaines d'outils MinGW 32bit (i686)", ou
   bien aller directement à la section "ImageMagick" si vous n'avez besoin
   que d'un environnement de travail 64bit.

            -------------------------------------------------------

    MinGW 32bit (i686) compiler and tools

   Sous le shell MSYS2, exécutez la commande suivante pour installer 32bit
   compiler and basic development tools :

     $ yes "" | pacman -S mingw-w64-i686-{gcc,pkgconf,ntldd-git}

   "ntldd" est un petit outil qui examine les fichiers exécutables de windows
   en vue de lister les fichiers DLL (.dll) qui leur sont nécessaires. Le
   process de fabrication de Tux Paint pour fournir des fichiers binaires
   s'en sert pour trouver les fichiers .dll requis.

    32bit (i686) dependency libraries for Tux Paint and Tux Paint Config

   You can install tools and libraries required for compiling Tux Paint and
   Tux Paint Config on MSYS2/MINGW using "pacman" except for SDL2_Pango and
   libunibreak.

   FLTK is a cross-platform GUI toolkit used by "Tux Paint Config". You can
   skip installing it if you are only building "Tux Paint".

     $ pacman -S mingw-w64-i686-SDL_{image,ttf,gfx}
     $ pacman -S mingw-w64-i686-{librsvg,fribidi,libimagequant,fltk}

   💡 Nota : Fermez l'interpréteur de commandes avant de passer à la suite.

    Install SDL2_Pango and libunibreak on the 32bit environment

   SDL2_Pango and libunibreak should be installed manually.

   This time, use the MinGW "32bit" shell. Open the shell from the "Start
   Menu" → "MSYS2 64bit" → "MSYS2 MinGW 32-bit"

      SDL2_Pango

   You can fetch the source code from the Mark K. Kim's git repositry,
   compile and install it as follows.

     $ git clone https://github.com/markuskimius/SDL2_Pango
     $ cd SDL2_Pango
     $ ./configure --prefix=/mingw32 && make && make install

      libunibreak

   libunibreak is required for compiling Tux Paint Config. You can skip
   installing it if you are only building "Tux Paint".

   You can fetch the source code from the git repositry and compile it as
   follows.

     $ git clone https://github.com/adah1972/libunibreak libunibreak
     $ cd libunibreak
     $ ./augogen.sh --prefix=/mingw32 && make && make install

  ImageMagick

   ImageMagick est un ensemble d'outils en ligne de commande pour créer,
   éditer, composer ou convertir des images bitmap, et qui supporte un grand
   nombre de formats d'image. Tux Paint utilise deux fonctions ("convert" et
   "composite") pour générer des vignettes pour les images de démarrage et
   des modèles durant le process de compilation.

   Using official binary release available from "Windows Binary Release" is
   recommended, due to the commands installed with "pacman" on MinGW/MSYS not
   working as expected!

   N'oubliez pas de cocher "Installer les utilitaires hérités (par ex.
   convert)" pour l'installation, car le processus de compilation de Tux
   Paint les utilise.

   Ajoutez le chemin où ImageMagick est installé au début de votre variable
   d'environnement "PATH". Par exemple :

     $ export PATH=/c/Program\ Files/ImageMagick-7.0.10-Q16-HDRI:$PATH

   Vous pouvez rendre ceci permanent en ajoutant ce qui précède à votre
   fichier de configuration du shell BASH, "~/.bash_profile".

  Tux Paint & Tux Paint Config.

   You can compile 64-bit binaries using "MSYS2 64bit" shell, and 32-bit
   binaries using "MSYS2 32bit" shell, respectively.

     * Select "MSYS2 64bit" → "MSYS2 MinGW 64-bit" from the "Start Menu" to
       open the 64bit shell.
     * Select "MSYS2 64bit" → "MSYS2 MinGW 32-bit" from the "Start Menu" to
       open the 32bit shell.

    Tux Paint Config.

   "Tux Paint Config" is a useful graphical tool for tweaking Tux Paint's
   behavior. You have to build this component before compiling Tux Paint if
   you want to have it included in your package.

   You can use either (a) a stable tar-ball release, or (b) the developing
   source tree.
    a. Using stable tar-ball release:
          * Download a source tar-ball
          * Expand the tar-ball and change the directory name so that the
            final packaging process can find related files.

              $ tar zxvf tuxpaint-config-A.B.C.tar.gz
              $ mv tuxpaint-config-A.B.C tuxpaint-config

    b. Using the developing source tree:
          * Fetch the developing source tree from git repository:

              $ git clone https://git.code.sf.net/p/tuxpaint/tuxpaint-config
              tuxpaint-config

   Now you can build Tux Paint Config. as follows:

     $ cd tuxpaint-config
     $ make win32

    Tux Paint

   You can use either (a) a stable tar-ball release, or (b) the developing
   source tree.
    a. Using stable tar-ball release:
          * Download a source tar-ball
          * Expand the tar-ball and change the directory name so that the
            final packaging process can find related files.

              $ tar zxvf tuxpaint-A.B.C.tar.gz
              $ mv tuxpaint-A.B.C tuxpaint

    b. Using the developing source tree:
          * Fetch the developing source tree from git repository:

              $ git clone https://git.code.sf.net/p/tuxpaint/tuxpaint
              tuxpaint

   Now you can build Tux Paint as follows:

     $ cd tuxpaint
     $ make bdist-win32

   Tous les fichiers nécessaires pour démarrer Tux Paint (et Tux Paint
   Config) sont rassemblés dans le répertoire de la distribution binaire
   "bdist", répertoire situé sous "win323. Vous pouvez les démarrer en
   double-cliquant leurs fichiers exéctutables (.exe) dans le répertoire
   "bdist".

  Building the Tux Paint Windows Installer

   Inno Setup est utilisé pour construire l'installeur exécutable de Tux
   Paint. Vous devez donc l'installer en premier.

   Officiellement Inno Setup prend en compte des traductions dans environ 20
   langues. Cependant, un des points majeurs de Tux Paint est qu'il supporte
   beaucoup de langues. Aussi, le script de mise au point "tuxpaint.iss" qui
   sert pour construire le programme d'installation est écrit en beaucoup
   plus de langues, y compris des non-officielles qui sont disponibles sur
   "Inno Setup Translations". Vous devez télécharger les fichiers de
   traduction (.isl) qui sont requis et les mettre dans le répertoire
   "Languages" sous le répertoire dans lequel Inno Setup est installé.

   Before building an installer, edit the "tuxpaint.iss" file and enable one
   of the lines starting with "#define BuildTarget=", depending on the
   architecture of the installer you want to create.

   Alors, vous pouvez facilement construire un installateur exécutable en
   cliquant-droit sur l'icône "tuxpaint.iss" du répertoires "win32" et
   sélectionner "Compile" dans la liste. Cela prendra un certain temps, et
   éventuellement vous obtiendrez un fichier
   "tuxpaint-X.Y.Z-windows-<arch>-installer.exe" dans le même répertoire.

  Running the Tux Paint Windows Installer

   Double-cliquez sur l'exécutable du programme d'installation de Tux Paint
   (fichier .EXE) et suivez les instructions.

   First, you will be asked to read the license. (It is the GNU General
   Public License (GPL), which is also available as "COPYING.txt".)

   Il vous sera ensuite demandé si vous souhaitez installer des raccourcis à
   Tux Paint dans votre menu Démarrer de Windows et sur votre bureau
   Windows.(Les deux options sont définies par défaut.)

   Puis, il vous sera demandé où vous souhaitez installer Tux Paint. La
   valeur par défaut devrait convenir, tant qu'il y a de l'espace disponible.
   Sinon, choisissez un autre emplacement.

   À ce stade, vous pouvez cliquer sur «Installer» pour installer Tux Paint !

  Changing the Settings Using the Shortcut

   Pour modifier les paramètres du programme, cliquez avec le bouton droit
   sur le raccourci TuxPaint et sélectionnez «Propriétés» (en bas).

   Assurez-vous que l'onglet "Raccourci" est sélectionné dans la fenêtre qui
   apparaît et examinez le champ «Cible:». Vous devriez voir quelque chose
   comme ceci :

     "C:\Program Files\TuxPaint\TuxPaint.exe"

   Vous pouvez maintenant ajouter des options de ligne de commande qui seront
   activées lorsque vous double-cliquez sur l'icône.

   Par exemple, pour faire fonctionner le jeu en mode plein écran, avec des
   formes simples (pas d'option de rotation) et en français, ajoutez les
   options (après 'TuxPaint.exe'), comme ceci :

     "C:\Program Files\TuxPaint\TuxPaint.exe" -f -s --lang french

   (Voir «README.txt» pour une liste complète des options de ligne de
   commande disponibles.)

   Si vous faites une erreur ou que tout disparaît, utilisez [Control] + [Z]
   pour annuler ou appuyez simplement sur la touche [Esc] et la boîte se
   fermera sans aucune modification (sauf si vous avez appuyé sur le bouton
   "Appliquer" !).

   Quand vous avez fini, appuyez sur "OK".

  If Something Goes Wrong

   If, when you double-click on the shortcut to run Tux Paint, nothing
   happens, it is probably because some of these command-line options are
   wrong. Open an Explorer, and look for a file called "stderr.txt" in your
   personal saving folder for TuxPaint which is normaly
   "C:\Users\username\AppData\Roaming\TuxPaint".

   Il contiendra une description de ce qui n'allait pas. Habituellement, ce
   sera simplement dû à une casse de caractère incorrecte (majuscule 'Z' à la
   place de 'z' minuscule) ou un '-' (tiret) manquant (en trop).

       ------------------------------------------------------------------

Linux/Unix

  Compilation :

   💡 Note: Tux Paint does not use autoconf/automake, so there is no
   "./configure" script to run. Compiling should be straight-forward though,
   assuming everything Tux Paint needs is installed.

   Pour compiler le programme à partir des sources, lancez simplement la
   commande suivante après une invite shell (par ex. "$") :

     $ make

  Désactivation du support SVG (donc des dépendances Cairo, libSVG, et
  svg-cairo)

   Pour désactiver le support de SVG (par ex. si votre système n'a pas de
   bibliothèque Cairo, ou d'autres choses dont SVG est dépendant), vous
   pouvez exécuter "make" avec "SVG_LIB= SVG_CFLAGS= NOSVGFLAG=NOSVG" :

     $ make SVG_LIB= SVG_CFLAGS=

  Disabling Sound at Compile-time

   Si vous n'avez pas de carte son ou si vous préférez créer le programme
   sans support sonore (et donc sans dépendance SDL_mixer), vous pouvez
   exécuter "make" avec "SDL_MIXER_LIB=" comme paramètre :

     $ make SDL_MIXER_LIB=

  Other options

   Diverses autres options (par exemple, les dossiers d'installation) peuvent
   être remplacées; voir dans "Makefile" pour plus de détails.

  If you get errors

   Si vous avez des erreurs lors de la compilation, assurez-vous d'avoir les
   bibliothèques adéquates installées (voir ci-dessus). Si vous utilisez les
   versions issues des paquets des bibliothèques (par exemple, les RPM sous
   RedHat ou les DEB sous Debian), assurez-vous d'avoir choisi également les
   packages "-dev" ou "-devel" correspondants, sinon vous ne pourrez pas
   compiler Tux Paint (et d'autres programmes) provenant des sources !

  Installng

   En supposant qu'aucune erreur fatale ne se soit produite, vous pouvez
   maintenant installer le programme afin qu'il puisse être exécuté par les
   utilisateurs du système. Par défaut, cela doit être effectué par
   l'utilisateur "root" ("superutilisateur"). Passer à "root" en tapant la
   commande :

     $ su

   Entrez le mot de passe de "root" à l'invite. Vous devriez maintenant être
   "root" (avec une invite comme "#"). Pour installer le programme et ses
   fichiers de données, tapez :

     # make install

   Pour finir, vous pouvez revenir sur votre compte utilisateur en sortant du
   compte superutilisateur :

     # exit

   Autre manière : vous faites simplement utilisation de la commande "sudo"
   (par ex. sur Ubuntu) :

     $ sudo make install

   💡 Note: By default, "tuxpaint", the executable program, is placed in
   "/usr/local/bin/". The data files (images, sounds, etc.) are placed in
   "/usr/local/share/tuxpaint/".

    Changer où vont les fichiers

   Vous pouvez changer où iront les fichiers en définissant des variables
   pour "Makefile" sur la ligne de commande. "DESTDIR" est utilisé pour
   indiquer la sortie des résultats de la compilation. "PREFIX" est la base
   où tous les autres fichiers iront et est définie par défaut comme
   "/usr/local".

   Les autres variables sont :

   BIN_PREFIX
           Où le binaire "tuxpaint" sera installé. (Par défaut
           "$(PREFIX)/bin", par ex. "/usr/local/bin")

   DATA_PREFIX
           Où les fichiers de données (sons, graphiques, pinceaux, tampons,
           fontes) iront, et où Tux Paint ira les chercher pour tourner
           (Réglé à "$(PREFIX)/share/tuxpaint")

   DOC_PREFIX
           Où sera mise la documentation (les répertoires "docs". 'Réglé à
           "$(PREFIX)/share/doc/tuxpaint")

   MAN_PREFIX
           Où ira la page de manuel de Tuxpaint (Réglé à
           "$(PREFIX)/share/man")

   ICON_PREFIX — $(PREFIX)/share/pixmaps

   X11_ICON_PREFIX — $(PREFIX)/X11R6/include/X11/pixmaps

   GNOME_PREFIX — $(PREFIX)/share/gnome/apps/Graphics

   KDE_PREFIX — $(PREFIX)/share/applnk/Graphics
           Où iront les icônes et les lanceurs (pour GNOME et KDE)

   LOCALE_PREFIX
           Où iront les fichiers de traduction, et où Tux Paint ira les
           chercher. (Réglé à "$(PREFIX)/share/locale/") (la destination
           finale de la traduction sera dans le répertoire de la locale (par
           ex "es" pour l'espagnol, dans le sous-répertoire "LC_MESSAGES").

   💡 Note: This list is out of date. See "Makefile" and "Makefile-i18n" for a
   complete list.

       ------------------------------------------------------------------

macOS

   juin 5, 2022 Mark Kim <markuskimius@gmail.com>

   Starting with Tux Paint 0.9.23, Tux Paint for macOS is built as though it
   were a Linux application.

  Prérequis

   Bien Tux Paint puisse être construit sans Xcode IDE, ce dernier est
   toujours nécessaire. Téléchargez le = partir de l' the App Store, et
   lancez le une fois pour accepter ses accords de licence. Vous pouvez aussi
   installer les outils de ligne de commande de Xcode en tapant la commande :

     $ xcode-select --install

   Construire Tux Paint nécessite plusieurs bibliothèques. Nous les
   installons à partir de MacPorts quand c'est possible, sinon à partir du
   code source. Installez MacPorts avec le chemin par défaut /opt/local
   suivant les instructions données sur leur site : https://www.macports.org/
     * ImageMagick
     * cairo
     * fribidi
     * lbzip2
     * libimagequant^*
     * libpaper
     * libpng
     * librsvg
     * libsdl2
     * libsdl2_image
     * libsdl2_mixer
     * libsdl2_pango^*
     * libsdl2_ttf
     * libsdl2_gfx
     * pkgconfig
     * zlib
   ... mais vous devriez installer tout paquet requis par la dernière version
   de Tux Paint.

   ^* Non disponible depuis MacPorts à ce moment, voir ci-dessous.

    libimagequant

   libimagequant n'est pas disponible sur MacPorts à cette heure. Il peut
   être installé sur /opt/local (comme pour MacPorts) pour la bibliothèque
   devant être incluse dans TuxPaint.dmg.

     $ sudo port install rust cargo
     $ git clone https://github.com/ImageOptim/libimagequant.git
     $ cd libimagequant/imagequant-sys
     $ cargo build --release # Must use cargo from MacPorts
     $ sudo make PREFIX=/opt/local install

    sdl2_pango

   sdl2_pango is not available from MacPorts as of this writing. It can be
   installed from the source code as follows. It should be installed to
   /opt/local (same as MacPorts) for the library to be included in
   TuxPaint.dmg.

     $ git clone https://github.com/markuskimius/SDL2_Pango.git
     $ cd SDL2_Pango
     $ ./configure --prefix=/opt/local && make && sudo make install

   ATTENTION :Posséder des outils Unix à côté de MacPorts et Xcode, tels que
   Fink ou Brew, vous empêchera de créer un programme portable. V"rifiez que
   Fink et Brew ne soient pas accessibles via votre environnement de travail.

  Comment construire

   Tapez simplement :

     % make
     % make install

   ... to create the TuxPaint.app application bundle that can be run in-place
   or copied to /Applications. To create the DMG file for distribution, use
   'make TuxPaint.dmg'.

   Additional steps may be required when building for the Apple Silicon. See
   "Building for Apple Silicon" below.

  Problèmes connus

     * Un binaire macOS construit sur une version spécifique de macOS ne
       fonctionnera qu'avec cette version, ou une plus récente. Pour
       s'assurer que Tux Paint puisse tourner sur la plus vieille version de
       macOS possible, construisez le sur la plus vieille version de macOS
       disponible. Au moment où nous écrivons Tux Paint ne peut être
       construit pour tourner sur macOS 10.7 ou plus récent.

       Voyez "Vieilles Versions de macOS" ci-dessous pour les meilleures
       instructions pour obtenir, installer et construire Tux Paint sur des
       vieilles versions de macOS.

       Alternatively, Tux Paint and all of its library dependencies may be
       compiled with appropriate options to be runnable on older versions of
       macOS. These options are already set on Tux Paint, so only its
       dependencies (from MacPorts) need to be recompiled. See "Recompiling
       MacPorts" below for the instructions.

  Vieilles versions de macOS

   Quelques vieilles versions de macOS peuvent être téléchargées sur la page
   d'aide d'Apple : https://support.apple.com/en-us/HT211683

   macOS for Intel CPU does allow dual booting of multiple versions of the
   OS, but it's safer and easier to install the old macOS onto a flash drive.
   Wherever you're installing it, the target drive's partitioniong scheme and
   partition type must match what the old macOS expects, so use the Disk
   Utility to partition and format the flash drive accordingly.

   Dual booting multiple versions of macOS for Apple Silicon has been so far
   unsuccessful. Instead of installing an older version of macOS for Apple
   Silicon to build Tux Paint to run on the old version of macOS for Apple
   Silicon, use the instructions found in the "Recompiling MacPorts" section
   to build Tux Paint to run on older versions of macOS for Apple Silicon.

   À ce moment, l'ancienne version de macOS disponible sur le site d'Apple
   est la Yosemite 10.10, qui un partitionnement "GPT (GUID Partition Table)"
   au lieu de MBR, et "Mac OS Extended (Journalisé)" comme type de partition
   au lieu du nouveau type APFS.

   Au lancement de l'installateur, si vous avez un message disant que macOD
   est trop vieux ou trop récent pour être installé, un installateur bootable
   peut être créé en suivant les instructions données ici :
   https://support.apple.com/en-mide/HT201372

   Une fois l'ancienne version de macOS installée, vous pouvez trouver que le
   Xcode du App Store est trop récent pour tourner sur la version du vieux
   macOS. Des anciennes versions de Xcode peuvent être téléchargées sur le
   site des développeurs d'Apple dans une zone accessible après
   enregistrement gratuit : https://developer.apple.com/download/more/

   La liste des versions de macOS et de la dernière version de Xcode
   compatible avec celle-ci a été gentiment mise sur la page Wikipedia sur
   Xcode : https://en.wikipedia.org/wiki/Xcode#Table de comparaison des
   versions

   Comme Xcode a été installé manuellement, vous pouvez sauter l'étape
   d'installation des outils de commande en terminal (ne pas exécuter
   "xcode-select --install") mais alors vous compilez Tux Paint en utilisant
   les mêmes étapes décrites auparavant dans ce document.

  Recompiling MacPorts

   To recompile MacPorts to be usable on older versions of macOS, set the
   following options in /opt/local/etc/macports/macports.conf:

     buildfromsource always
     macosx_deployment_target 10.10

   Then uninstall all MacPorts packages:

     $ sudo port -fp uninstall installed

   Then reinstall all MacPorts packages needed by Tux Paint. Also rebuild
   libimagequant using the updated Cargo package from MacPorts.

   As of this writing, all libraries Tux Paint requires from MacPorts can be
   recompiled in this manner to run on macOS 10.10 Yosemite and later on
   Intel CPUs, and macOS 11.0 Big Sur and later on Apple Silicon.
   Unfortunately, although MacPorts has the option to enable the building of
   universal libraries, several libraries Tux Paint require cannot be built
   as universal libraries so they can only be built to run natively on the
   hardware on which they were built. See "Building a Universal Binary" below
   for instructions on how to build Tux Paint as a Universal Binary.

  Building for Apple Silicon

   macOS for Apple Silicon requires all native Apple Silicon applications be
   signed, even if it is signed "ad-hoc" (anonymously). Because of this,
   compilers that produce native Apple Silicon applications sign all produced
   binaries and libraries as a part of the compilation process.^* However,
   the Tux Paint compilation process modifies the libraries to be modular
   (using install_name_tool) so they can be added into the application
   bundle, which has the unfortunate side effect of breaking the signature.
   This can be addressed by signing the application bundle ad-hoc (example
   below) or using your own Apple Developer Identity if you have one. The DMG
   file, if needed, must be created after signing the App Bundle so the DMG
   file is created with signed App Bundle:

     $ codesign -s - TuxPaint.app
     $ make TuxPaint.dmg

   ^* For more information on the code signing requirements on the Apple
   Silicon, see
   https://developer.apple.com/documentation/macos-release-notes/macos-big-sur-11_0_1-universal-apps-release-notes#:~:text=New%20in%20macOS,pass%20through%20Gatekeeper.

   If you get an error that the application bundle is already signed, remove
   it before signing:

     $ codesign --remove-signature TuxPaint.app

   If you plan to combine the Apple Silicon bundle with the Intel CPU bundle
   to produce the Universal bundle, the code signing must be done after they
   are combined. See "Building a Universal Binary" below.

  Building a Universal Binary

   To build Tux Paint as a Universal Binary, compile Tux Paint for the Intel
   CPU and the Apple Silicon separately first. Then rename the app bundle for
   the Intel CPU to TuxPaint-x86_64.app, and the bundle for the Apple Silicon
   to TuxPaint-arm64.app, copy the app bundle from the Intel machine to the
   Apple Silicon machine, then use the provided build-universal.sh script to
   combine the two application bundles as below. The produced bundle must be
   signed (see "Building for Apple Silicon" above for more details). The DMG
   file, if required, must be built after the signing:

     $ macos/build-universal.sh
     $ codesign -s - TuxPaint.app
     $ make TuxPaint.dmg

       ------------------------------------------------------------------

Android

   mars 29, 2023 Pere Pujal i Carabantes <perepujal@gmail.com> (Edited by
   Bill Kendrick)

   As of March 2023, the Android build of Tux Paint is maintained in a
   separate code repository at GitHub:
   https://github.com/tux4kids/Tuxpaint-Android. Detailed instructions are
   there; this acts as an overview.

  Prérequis

   You will need recent versions of:
     * Gradle — build automation tool
     * Android Studio (Software Development Kit (SDK)) — to support Android
       app development (Java)
     * Android Native Development Kit (NDK) — to support native development
       in C/C++

   To compile the latest Tux Paint, one has to sync the main SourceForge
   project's tuxpaint Git repository with the GitHub project's
   TuxPaint-Android Git repository. (Pere uses a shell script that backs up
   the app/src/main/jni/tuxpaint directory in the Tuxpaint-Android GitHub
   repo and makes a build of SourceForge's tuxpaint to generate translations
   and other things that are not autogenerated in the Android builds, and
   then copies the SourceForge tuxpaint back to Tuxpaint-Android.) (FIXME: It
   should be checked-in somewhere. For now, see
   https://sourceforge.net/p/tuxpaint/feature-requests/224/)

   For it to run you need the tuxpaint and Tuxpaint-Android sources one next
   to one another, and the script in the directory containing both.

   Fill the app/src/main/assets directory by running cd
   app/src/main/jni/tuxpaint && ./mkzip_assets.sh

  Building

   The Gradle build generates some variants: PlayStore, debugPlayStore,
   offPlayStore and debugoffPlayStore. You must sign the non-debug ones to be
   able to install them. (FIXME: Link to info on how to sign.) (Note:
   "playStore" ones are intended to be uploaded to Google Play; this is
   currently managed by Terrence Sheflin —March 2023. "offPlayStore" is the
   flavor that we distribute as APK files on the Tux Paint website and
   SourceForge file hosting, and is the variant built by the F-Droid app.
   repository.)

   To trigger a build from F-droid, it suffices to tag a commit and push it
   to GitHub. That doesn't guarantee the build will succeed though, so Pere
   usually runs a local F-droid server to test the build and eventually adapt
   the F-droid's build receipt before pushing the tag to GitHub.

   The builds Pere distributes are all made with that local F-droid server.
   It has the advantage of packing the sources and logs, and signing the APK.
   Most importantly, it uses the same tools F-Droid will use to build Tux
   Paint, so you can detect problems beforehand.

   The receipt Pere uses for F-Droid builds is in the metadata dir of
   https://gitlab.com/fdroid/fdroiddata. The F-Droid server code is at
   https://gitlab.com/fdroid/fdroidserver. To generate the server you will
   need 1GB free on disk. Run the makebuildserver tool they provide, then,
   from the root of fdroiddata, run ../fdroidserver/fdroid build --server
   org.tuxpaint:NNNN (NNNN = version, e.g. 9288)

       ------------------------------------------------------------------

Haiku

   mai 7, 2023 Luc Schrijvers <begasus@gmail.com> (Edited by Bill Kendrick)

  Prérequis

   Install the required develop packages in Terminal:

   32-bit:
           pkgman install xcairo_x86_devel fribidi_x86_devel
           gdk_pixbuf_x86_devel libiconv_x86_devel libimagequant_x86_devel
           gettext_x86_libintl libpaper_x86_devel pango_x86_devel
           libpng16_x86_devel librsvg_x86_devel libsdl2_x86_devel
           sdl2_image_x86_devel sdl2_gfx_x86_devel sdl2_mixer_x86_devel
           sdl2_pango_x86_devel sdl2_ttf_x86_devel zlib_x86_devel

   64-bit:
           pkgman install xcairo_devel fribidi_devel gdk_pixbuf_devel
           libiconv_devel libimagequant_devel gettext_libintl libpaper_devel
           pango_devel libpng16_devel librsvg_devel libsdl2_devel
           sdl2_image_devel sdl2_gfx_devel sdl2_mixer_devel sdl2_pango_devel
           sdl2_ttf_devel zlib_devel

   For 32-bit you need to switch to the new compiler (currently gcc 11.2.0)
   with setarch x86

  Building

   make PREFIX=/boot/home/config/non-packaged

  Tux Paint Stamps

   make install-all
   DATA_PREFIX=/boot/home/config/non-packaged/share/tuxpaint/

                                    Débogage

   ⚙ Le débogage — vers "STDOUT", avec Linux et Unix, vers un fichier
   "stdout.txt"avec Windows, et vers le fichier "/tmp/tuxpaint.log" avec
   macOS — peut être activé en définissant "DEBUG" (et, si un mode verbeux
   est souhaité, "VERBOSE") # define dans "src/debug.h, et en (re)compilant
   Tux Paint.

                          Désinstallation de Tux Paint

Windows

  Utilisation du désinstalleur

   Si vous avez installé les raccourcis du menu Démarrer (par défaut),
   accédez au dossier TuxPaint et sélectionnez "Désinstaller". Une boîte
   s'affichera qui confirme que vous êtes sur le point de désinstaller Tux
   Paint et, si vous en êtes certain et que vous souhaitez supprimer
   définitivement Tux Paint, cliquez sur le bouton 'Désinstaller'.

   Quand c'est fini, cliquez sur "Fermer".

  En utilisant le panneau de configuration

   Il est également possible d'utiliser l'entrée "TuxPaint (supprimer
   uniquement)" dans la Section Ajout / Suppression de programmes du Panneau
   de configuration.

macOS

   Enlevez "TuxPaint.app" du dossier "Applications". Les fichiers de données
   les fichiers de configuration, les tampons et les images sauvegardées
   peuvent être trouvées dans "/Library/Application Support/TuxPaint" (pour
   tous les utilisateurs) et "/Users/USERNAME/Library/Application
   Support/TuxPaint" pour les utilisateurs individuels.

Linux

   Dans le répertoire source de Tux Paint (où vous avez compilé Tux Paint),
   vous pouvez utiliser une cible "make uninstall" pour désinstaller Tux
   Paint. Par défaut, cela doit être fait par l'utilisateur "root"
   ("superutilisateur"), mais si vous avez installé Tux Paint à un autre
   endroit (par ex. en mettant "PREFIX=..." à "make" et "make install", vous
   ne pourrez pas, et il faudra fournir les mêmes réglages ici. (Voir <a
   href="#compiling-linux>les instructions d'installation ci-dessus pour plus
   d'informations.)
