• [^] # Re: Pendant ce temps...

    Posté par . En réponse à la dépêche C++11 : sur le fil. Évalué à 2.

    Le logiciel que tu utilises a ete compile avec VS XX et donc tu dois aussi avoir exactement la meme version pour que ton truc a toi fonctionne.

    C'est surtout un problème d'incompatibilité binaire du C++ en fait, il y a des incompatibilités entre les différentes versions de la lib standard C++. Ça peut faire des bugs assez subtils à débugger, où la mémoire est allouée par une version de malloc() et récupérée par une version de free() qui ne correspond pas.

    Du coup chez microsoft ils donnent un nom différent à la DLL de la lib C++, ce qui empêche de linker en cas de problème.

    Je ne sais pas à quel point le problème existe sous linux. Il me semble que des collègues ont eu des soucis de ce genre récemment, mais il s'agissait de faire fonctionner un code compilé avec une libstdc++ récente sur une machine avec des versions plus anciennes, et je suis pas sûr que le problème soit solvable dans ce sens là.