Créer une bibliothèque
Préparation
Téléchargez le projet projet-library.zip. Ce projet contient:
- image.c et image.h, pour lire et écrire des images
- traitement.c et traitement.h, avec un algorithme de traitement exemple
- Makefile, avec les règles pour créer la bibliothèque
De plus, le projet contient quelques exemples pour utiliser la bibliothèque:
- exemple.c, un programme C qui est compilé avec la bibliothèque
- exemple-dlopen.c, un programme C qui charge la bibliothèque avec dlopen
- exemple.py, un script Python qui utilise la bibliothèque
- exemple.pl, un script Perl qui utilise la bibliothèque
- 1570970041.jpg, une image exemple
Le projet a été préparé pour Linux, mais il peut être adapté pour Windows et Mac OS en ajoutant les bibliothèques libpng et libjpeg.
Compiler la bibliothèque
Insérez votre algorithme dans la fonction traiterImage
de traitement.c. Vu que le projet n'est plus lancé comme programme, il n'y a plus de fonction main.
Si votre bibliothèque propose de fonctions supplémentaires, adaptez le header traitement.h
.
Compilez la bibliothèque avec
$$ make
Ceci crée les fichiers libprojet.so (bibliothèque dynamique) et libprojet.a (bibliothèque statique). Les fichiers *.o sont des fichiers intermédiaires, et peuvent être effacés (rm *.o
, ou make clean
).
Exemples d'utilisation
Les exemples sont lancés comme suit:
# C (compiler et exécuter) $$ gcc -Wall exemple.c -lpng -ljpeg ./libprojet.so -o exemple $$ ./exemple # C (compiler et exécuter) $$ gcc -Wall exemple-dlopen.c -ldl -o exemple-dlopen $$ ./exemple-dlopen # Python (avec ctypes) $$ ./exemple.py # Perl (avec Inline::C) $$ ./exemple.pl