Chapitre 1 : Introduction

Tout ceci mérite une petite explication, depuis le début de ce cours vous avez utilisés des librairies statiques qui ont été copiée dans vos programmes et des librairies dynamique qui ne se sont pas copiées mais qui se chargeaient au début de l'exécution de votre programme (avant l'appel de la fonction main).

Dans cette partie, je vous propose de charger des librairies dynamiquement dans le sens où vous les chargerez pendant l'exécution de votre programme, après l'appel de la fonction main.

Pour ce faire, nous allons faire du très bas niveau (autrement ce n'est pas drôle), et nous allons utiliser une librairies que vous avez déjà dû croiser sans y prêter attention. Cette librairie qui nous permet de charger d'autres librairies dynamiquement est la librairie dl.

Ah, oui, ça me dis quelque chose.

Ça vous dira forcément quelque chose si vous avez déjà regarder dans un makefile généré par CMake. Et oui, le linkage, c'est dl qui s'en occupe, donc ce n'est pas un hasard si on va s'en servir nous aussi (mais plus de manière automatique comme à la compilation).