Installer la lib Cini
Introduction
Cini est une bibliothèque graphique simplifiée pour le C, vous permettant de comprendre les fondamentaux graphiques d'une bibliothèque plus avancée: SDL2 dont Cini dépend
⚠️ Prérequis:
-
Ce tutoriel est dédié aux utilisateurs de machines ayant un fonctionnement basé sur UNIX dont MacOS, Linux ou Windows avec WSL. Pour les utilisateurs Windows n'ayant pas WSL, apprenez comment l'installer ici
-
Nous admetterons qu'un environnement de programmation C a été configuré sur votre machine. Si ce n'est pas le cas, apprenez comment le faire facilement sur cet article.
-
Vous devez maîtriser les fondamentaux de Bash, vous pourrez en apprendre plus sur les commandes de bases avec cet article
Cloner le repo git
Vous devez disposer de l'application git sur votre machine.
Pour MacOS
Si vous ne disposez pas d'un package manager, vous pouvez l'installer directement via le site officiel.
Si au contraire vous en avez un, n'hésitez pas à l'utiliser pour installer git.
Par exemple avec HomeBrew, vous pouvez utiliser la commande:
brew install git
Pour WSL et Linux
Installez git avec le package de manager de votre distribution.
Par exemple, pour Ubuntu ce sera:
sudo apt install git
Et après...
Une fois que vous disposez de git, vous pouvez cloner le répertoire Github de Cini.
Le mieux est de le faire dans un nouveau dossier local
à la racine de votre dossier HOME ~
:
mkdir local
cd local
git clone https://github.com/wegank/libcini
⚠️ NB N'utilisez pas ce fichier comme stockage personnel, il vous servira notamment à installer les dépendances d'autres langages de programmation, alors il est important de le laisser tel quel
Une fois le téléchargement terminé, vous devriez avoir un nouveau dossier nommé libcini
dans le dossier local
, faites ls
pour le constater !
Installer CMake pour le compiler
Bien qu'on aurait pu se passer de compiler le code de Cini depuis sa source, il est toujours mieux de le faire soit même quand on en a l'occasion pour en comprendre la logique.
Ainsi, afin de mener à bien la compilation de Cini nous avons besoin de CMake
Pour MacOS
Vous pouvez télécharger CMake depuis le site officiel...
...Ou bien utiliser un package manager tel qu'HomeBrew:
brew install cmake
Pour WSL et Linux
Installez CMake à partir de votre gestionnaire de paquet.
Par exemple pour Ubuntu:
sudo apt install cmake
Installer les dépendances de Cini
Pour fonctionner, Cini va avoir besoin des bibliothèques SDL2. Pas de panique ! l'installation se fera plus rapidement que pour Cini !
Pour MacOS
Vous devez vous procurer un package manager tel qu'HomeBrew pour installer efficacement cette nouvelle librairie.
Grâce à HomeBrew, vous serez en mesure d'installer rapidement différents outils pratiques pour la programmation en une ligne de commande dans le terminal.
Une fois fait, vous pouvez exécuter les commandes suivantes:
brew install sdl2
brew install sld2_ttf
Pour Linux et WSL
Avant d'installer un package, n'oubliez pas de mettre à jour votre système pour avoir les derenières versions compatibles.
Pour ubuntu par exemple:
sudo apt update
sudo apt upgrade
Utilisez le package manager de votre distribution pour vos procurer SDL2.
Par exemple, pour Ubuntu.
sudo apt install libsdl2-dev
sudo apt install libsdl2-ttf-dev
Compiler Cini
Afin de pouvoir compiler Cini il faut que vous retourniez sur le repertoire ~/local/libcini/
que vous avez obtenu en clonant le repo Github.
A l'aide de la commande cd
placez vous à l'intérieur et exécutez:
mkdir build
cd build
cmake ..
cpack ..
Une fois fait, Cini devrait être compilé. Pour autant vous ne pourrez pas encore l'utiliser...
Ajouter Cini à C
Finalement, vous devrez modifier quelques variables afin d'avoir Cini de disponible pour vos programmes C
Pour Linux et WSL
Le processus est simple. Si vous n'avez pas agit sur le shell, vous devrez modifier votre fichier ~/.bashrc
.
Le code à l'intérieur de ce fichier s'exécutera à chaque fois que vous ouvrirez le terminal.
💡 Vous remarquerez que ce fichier se trouve à la racine de votre repertoire HOME: ~
et que ce fichier est caché car il commence par un .
Pour les utilisateurs ayant modifié leur shell, un fichier avec un nom similaire devrait se trouver à la racine de votre répertoire HOME
~
. Normalement nommé.<nom_du_shell>rc
Par exemple, si vous utilisezzsh
, le nom de ce fichier sera.zshrc
Vous pouvez modifier rapidement ce fichier avec le logiciel nano
qui est un éditeur de texte à l'intérieur du terminal.
nano ~/.bashrc
Une fois à l'intérieur, allez à la toute fin puis copiez collez ce code (avec clique droit sur le terminal):
💡 Vous pouvez vous déplacer à l'aide des flèches sur votre clavier !
# On ajoute Cini à l'include de C pour éviter l'erreur de compilation
export C_INCLUDE_PATH=$HOME/local/libcini/include/:$C_INCLUDE_PATH
# On ajoute la possibilité d'utiliser -lcini et donc d'utiliser la librairie cini à la compilation
export LIBRARY_PATH=$HOME/local/libcini/build/src/:$LIBRARY_PATH
# On ajoute Cini au gestionnaire de librairie LD
export LD_LIBRARY_PATH=$HOME/local/libcini/build/src/:$LD_LIBRARY_PATH
Si vous êtiez sur nano
, appuyez sur CTRL+X
pour fermer le fichier et sauvegardez en appuyant sur Y
puis Entrée
💡 Comme vous avez pu probablement le constater: le caractère ^
sert à indiquer la pression de la touche CTRL
. Vous serez amener à rencontrer cette notation plus tard !
⚠️NB: Si vous avez mis le fichier de libicini autre part que dans le dossier ~/local/
veillez à bien modifier le chemin d'accès spécifié pour correspondre à votre arborecence. (on a $HOME=/home/<nom_utilisateur>/
)
Vous pouvez exécuter la commande suivante pour appliquer les changements immédiatement:
source ~/.bashrc
Pour MacOS
D'après ce post de StackOverflow
Vous devez vous rendre dans l'application Automator.app
Ensuite vous devez ajouter un nouveau script shell dans Application > Librairies > Ajouter un script shell
Vous pouvez ensuite copier coller le code ci dessous
# On ajoute Cini à l'include de C pour éviter l'erreur de compilation
export C_INCLUDE_PATH=$HOME/local/libcini/include/:$C_INCLUDE_PATH
# On ajoute la possibilité d'utiliser -lcini et donc d'utiliser la librairie cini à la compilation
export LIBRARY_PATH=$HOME/local/libcini/build/src/:$LIBRARY_PATH
# On ajoute Cini au gestionnaire de librairie LD
export LD_LIBRARY_PATH=$HOME/local/libcini/build/src/:$LD_LIBRARY_PATH
Sauvegardez ceci sous le format Application dans le repertoire de votre choix. Le mieux est de le conserver dans un dossier fixé que vous ne risquez pas de supprimer.
Rendez-vous ensuite dans les Paramètres, puis dans Utilisateurs et groupes (ou Comptes), et enfin cliquez sur Exécuter au démarrage. Vous n'avez plus qu'à ajouter l'Application précédemment créée !
Vérifiez que tout fonctionne !
Si tout se passe bien, vous serez en mesure d'utiliser Cini sur votre machine ! Pour vous en convaincre, vous pouvez copier le code du fichier Exemple de Cini disponible sur le répertoire GitHub:
#include <cini.h>
int main() {
CINI_print_string("Test\n");
CINI_open_window(250, 100, "Test");
CINI_fill_window("white");
CINI_draw_disc(125, 50, 38, "red");
CINI_draw_string(12, 30, "black", "Cini vous dit bonjour !" );
CINI_loop();
return 0;
}
Compilez le à l'aide de gcc avec
gcc hello.c -o hello.out -lcini
Puis exécutez le avec
./hello.out
Alors ? Voyez-vous apparaître la fenêtre à l'écran ? ;)