Outils pour utilisateurs

Outils du site


probleme:liaison:vs

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
probleme:liaison:vs [2016/11/05 11:28] – ↷ Page déplacée de liaison:vs à probleme:liaison:vs rootprobleme:liaison:vs [2025/11/12 16:22] (Version actuelle) – supprimée root
Ligne 1: Ligne 1:
-=====Liaison de librairies DLL ayant une dépendance circulaire===== 
-Prenons le cas de la librairie ''libprojet'' qui définit l'interface ''IParametres'' et une seconde ''libeurocode''. ''libeurocode'' implémente ''IParametres'' avec les normes EC et ''libprojet'' est liée à ''libeurocode'' pour l'utiliser de façon native (sans chargement dynamique).  
  
-L'astuce consiste à compiler ''libeurocode'' en premier (choix arbitraire) mais sans demander à le lier (via l'éditeur de lien) avec la librairie ''libprojet''. La compilation (''.dll'') va échouer mais l'édition des liens (''.lib'') va réussir. 
- 
-Ensuite, il reste à compiler normalement ''libprojet'' en le liant à ''libeurocode'' et enfin à recompiler ''libeurocode'' en le liant cette fois avec ''libprojet''. Ainsi les 2 libraires sont bien générées. 
- 
-Afin d'avoir à éviter de modifier le projet à chaque compilation l'une librairie, il est conseillé de créer 3 projets pour générer les 2 librairies. Le premier pour ''libeurocode'' sans la liaison avec ''libprojet'', le deuxième pour ''libprojet'' avec la liaison avec ''libeurocode'' et enfin le troisième qui sera parfaitement identique au premier sauf que la liaison avec ''libprojet'' sera définie. 
probleme/liaison/vs.1478341694.txt.gz · Dernière modification : de root