Installation

La librarie est écrite en C++20, et nécessite les dépendances suivantes :

  • GCC (avec le frontend G++), version >= 10.2.0,
  • libfmt, version >= 8.0.0
  • libpng-dev
  • libfreetype6-dev
  • libeigen3-dev, version >= 3.0.0

Installation des dépendances (Ubuntu)

Avertissement
Ceci a été testé avec Ubuntu version 22.04 (cela pourrait ne pas fonctionnner avec une version précédente).

Pour installer les dépendances, utiliser la commande suivante :

sudo apt-get install gcc g++ make pkg-config libfmt-dev libeigen3-dev libpng-dev libfreetype6-dev

Installation des dépendances (Windows)

Ceci a été testé sous Windows 11 et avec l'environnement MSYS2/MINGW64.

  • Télécharger et installer MSYS2 (depuis l'adresse https://www.msys2.org/), en sélectionnant la version 64 bits.
  • Dans le dossier c:/msys64, lancer le programme "mingw64.exe"
  • Dans ce terminal, lancer la commande suivante :

    pacman -Syu
    

  • Fermer le terminal, et en ouvrir à nouveau un autre (mingw64.exe)
  • Dans ce nouveau terminal, exécuter la commande suivante :

    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-eigen3 mingw-w64-x86_64-fmt mingw-w64-x86_64-freetype mingw-w64-x86_64-libpng  make pkg-config
    

Compilation et installation

La procédure décrite ici est la même pour Windows ou Linux.

Dans un terminal (terminal MSYS pour windows), exécuter les commandes suivantes :

git clone tsdconseil/libtsd
cd libtsd
make -j 8
sudo make install

Une fois la librairie installée, vous pouvez vérifier que tout s'est bien passé en compilant un programme d'exemple. Dans le dossier exemples, vous pourrez en trouver un (example.cc). Pour le compiler :

cd libtsd/exemples
make

Un fichier nommé exemple.exe devrait avoir été créé (notez que l'extension .exe sera présente même sous Linux). Il suffit de le lancer :

./exemple.exe

Une image PNG devrait avoir été crée : cosinus.png. Vous pouvez vous inspirer des options présentes dans le Makefile correspondant pour compiler vos propres programmes (voir section ci-dessous - Utiliser la librairie).

Génération des auto-tests

cd libtsd
make TESTS=1 -j 8
./build/debug/tests.exe

Utiliser la librairie

Il faut ajouter les options suivantes à votre Makefile :

CXXFLAGS = -g -march=native -fPIC -std=c++2a `pkg-config --cflags eigen3` -I/usr/local/include
LDFLAGS  = -ltsd -lfreetype -lpng -lz -lfmt -L/usr/local/lib

Ensuite, dans votre fichier C++, il suffit d'ajouter au début :

#include <tsd/tsd-all.hpp>

Les espaces de nom tsd, tsd::filtrage, lien non trouvé : [namespacetsd_1_1fourier]tsd::fourier et lien non trouvé : [namespacetsd_1_1vue]tsd::vue seront alors disponibles.