Importation de deux lib utilisant deux versions OpenGL différentes —> ça plante
Bonjour,
Je suis sous linux, j'utilise cmake (gcc et clang).
J'utilise wxWIdgets, Ogre, Cycles et plus tard il y en aura encore d'autres.
Chacune de ces librairies utilisent OpenGL.
Cycles utilise son propre dossier de dépendances. Il utilise peu les dépendances du système.
Quand je compile Ogre et WxWIdgets, j'utilise au maximum les librairies du système.
Ça fonctionnait à peu près bien avant d'inclure Cycles.
Au premier appel à OpenGL ça plante directe. Même le try and catch ne permet pas de sortir l'erreur.
Si je retire Cycles de mon projet, ça redevient normal.
Je suppute que le problème vient de l’utilisation de différentes dépendances à OpenGL.
J'ai l'impression que pour corriger ce problème, j'ai deux solutions :
- Soit je compile Cycle avec les librairies utilisées par Ogre et wxWidgets.
- Soit je trouve une solution pour isoler mes modules/.dll/.so du reste du programme sauf pour la partie qui m'intéresse.
Je trouve la dernière solution plus satisfaisante à l'utilisation.
Les modules pourront être gros et obèses comme Cycles, mais ceux qui créeront des modules n'auront pas à se soucier autant des dépendances du programme de base.
Excepté que pour cette dernière solution, je ne vois pas trop comment faire et même si c'est possible.
J'essaierais bien de faire plutôt que prévu un gestionnaire de plugins/modules qui pourront être chargés dynamiquement.
Exemple avec Ogre3D :
https://github.com/OGRECave/ogre/blo...lkanPlugin.cpp
Mais est-ce que cela impactera le reste du programme ?
Auriez-vous un avis sur cette problématique ?