Probleme avec Visual C++ et la STL

Probleme avec Visual C++ et la STL - C++ - Programmation

Marsh Posté le 12-05-2004 à 09:56:14    

J'utilise Visual Studio 6.
 
L'histoire ( vous pouvez passer directement au probleme si vous trouvez ca trop long ) :
 
En essayant de compiler un projet utilisant la librairie Allegro - ce qui ne m'était jamais arrivé - j'ai eu droit a un "internal compiler error" dans la compilation d'une des en tetes de Allegro.
 
Je sais que le compilo de VS6 n'est pas tres aux normes (euphémisme!), le coup des boucles for me gavait déja pas mal, alors je me suis dit pourquoi ne pas remplacer le compilo par celui fourni gratuitement par Microsoft?
 
J'ai téléchargé le MSVC Toolkit, tout content, je copie le contenu des dossiers lib, bin, et include du Toolkit vers mon dossier Visual Studio/VC98, de maniere a ce que l'IDE de Visual Studio utilise bien le compilo du Toolkit et non pas l'ancien ( qui venait donc d'etre écrasé, tout comme pas mal de headers et de .lib )
 
Le projet Allegro compilait! Mais j'ai crié victoire trop tot, car en essayant de recompiler un autre projet - SDL, celui ci - j'ai eu droit a une floppée d'erreurs de linkage (unresolved externals) dues au fait que le nouveau compilo n'utilise pas les memes CRT que celles avec lesquelles la SDL avait été compilée.
 
Je décide alors de recompiler la SDL, avec la nouvelle CRT, je dispose donc de mon nouveau sdl.lib, mais ca n'a rien résolu...  
 
Enervé, je décide de laisser tomber le projet Allegro et de - sacrilege! - revenir a l'ancien compilo, qui lui au moins, avait le mérite de compiler et linker mon projet!
 
J'ai donc récupéré sur mon cd de Visual C++ 6 les dossiers bin, lib et include avec lesquels j'ai remplacé les dossiers hybrides qu'il y avait dans "Visual Studio/VC98" ( dans lesquels étaient mélangés les fichiers de VC++6 et .NET, donc ). Donc a priori j'ai maintenant une install propre ... Erreur!
 
Mon projet utilisant la SDL ne compile carrément plus, a cause d'une erreur due a la STL. Je télécharge la version du site de Silicon Graphics, que j'installe dans un dossier include auxiliaire qui a la priorité par rapport a ceux de VC++.
 
Et la, qu'est-ce que je découvre?
 
Le probleme :
 
Quand je compile mon projet qui utilise la SDL, j'ai droit a :
 

new(9) : fatal error C1083: Cannot open include file: 'exception': No such file or directory

 
Pris d'un doute, je vérifie : "new" est bien sur le cd de Visual C++. Et il référence "exception". Mais exception, je ne le vois nulle part!
 
Merci a ceux qui auront pris la peine de me lire jusqu'au bout, j'en peux vraiment plus, ca fait des heures que je passe a essayer ne serait-ce que de revenir a ma situation initiale, avant de vouloir mettre a jour ce p***** de compilo!!
 
Si quelqu'un a compris le probleme, je l'implore de m'aider!!!


Message édité par Ace17 le 12-05-2004 à 10:11:44
Reply

Marsh Posté le 12-05-2004 à 09:56:14   

Reply

Marsh Posté le 12-05-2004 à 10:38:10    

Moi je dirais que c'est soit ça :
 
http://www.bloodshed.net/devcpp.html
 
soit une reinstall complete de Visual

Reply

Marsh Posté le 12-05-2004 à 10:40:04    

Lol ..... figure toi qu'au moment ou je te parle je suis en train de tenter la premiere solution :)
Et d'ailleurs ca m'a forcé a corriger des erreurs dans mon code que Visual avait laissé passer!

Reply

Marsh Posté le 12-05-2004 à 10:45:58    

Au fait, tu as pensé à installer le dernier SP de Visual ? Vu l'age de ce dernier, ce n'est pas du luxe et donc il est fort possible que la version des fichiers sur le CD ne corresponde pas à celle de la version de Visual que tu avait avant l'experience.

Reply

Marsh Posté le 12-05-2004 à 10:50:27    

Ouais, j'y ai pensé mais je ne l'ai pas fait... T'as raison, je vais le faire. Mais d'abord une réinstall complete de Visual


Message édité par Ace17 le 12-05-2004 à 10:50:44
Reply

Marsh Posté le 12-05-2004 à 11:47:31    

exception est bien livré avec VC++ Toolkit 2003.
C'est généralement pas une bonne idée de mélanger des libs dans les mêmes répertoires. Laisse dans son répertoire séparé que tu ajoutes au VC++ path avant l'ancien. Le compilo ira chercher dedans avant l'ancien.

Reply

Marsh Posté le 12-05-2004 à 12:18:00    

ouais, le "exception" du VC++ Toolkit je l'avais vu; Mais c'est le fait qu'il soit référencé par un header de VC++ 6 qui me choque...

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed