Bonjour,
J'utilise actuellement une "librairie", ou plutôt ses sources .c et .h, et j'aurai voulus éviter d'inclure les 36 fichiers à chaque projet qui utilise cette librairie. Je souhaiterais donc créer une librairie statique et/ou dynamique à partir de ses fichiers. Malheureusement j'ai pas trouver bcp de tutos qui correspondait à ça, c'est à dire, prendre 15 fichiers existants faits par quelqu'un'un d'autre et qu'il vaut mieux ne pas modifier et créer une librairie. Je ne maîtrise pas tout non plus sur la création et la gestion des librairie dynamique., donc je ne vois pas trop comment faire.
J'ai créer un projet de création de librairie dynamique sous Code::Blocks. J'ai vu que c'était assez simple au final, il suffit apparemment de mettre la déclaration de la fonction dans le "main.h" (example sous code::blocks) et la définition dans le "main.c". Il faut rajouter DLL_EXPORT devant chaque nom de fonction que l'on souhaite exporter, cela pour la déclaration de la fonction amis aussi pour sa définition. Je pense qu'on est d'accord, ou si je dis des bêtises, corrigez moi.
Maintenant, pour exporter les fonctions de ma librairie. Comment faire ?
Je fais un :
#include <mylibrairie_src.h>
mais après ? Pour lui dire de tout exporter ?? Dois-je rajouter un DLL_EXPORT devant toutes les fonctions de .h et .c, c'est à dire, dois-je modifier les sources ???? ce n'est pas une idée qui me plait...
N'y a-t-il pas moyen de lui dire d'exporter toutes les fonctions de mes .h et .c sans les modifier ? Ou alors, je dois recopier à la main tous les prototypes et définition des fonctions que je veux exporter dans les fichiers main.h et main.c pour y ajouter le DLL_EXPORT sans toucher aux sources ?
Merci
RV
L'intelligence est la chose la mieux répartie chez l'homme, car quoi qu'il en soit pourvu, il a toujours l'impression d'en avoir assez. "Descartes"