142 votes

Pourquoi l'erreur fatale "LNK1104 : cannot open file ' C:\Program.obj '" se produit lorsque je compile un projet C++ dans Visual Studio ?

J'ai créé un nouveau projet C++ dans Visual Studio 2008. Aucun code n'a encore été écrit ; seuls les paramètres du projet ont été modifiés.

Lorsque je compile le projet, je reçois l'erreur fatale suivante :

fatal error LNK1104 : cannot open file ' C:\Program.obj '

0voto

Zoku012 Points 11

Dans mon cas, j'avais remplacé les fichiers de la bibliothèque mathématique d'un cours précédent sur les graphiques des moteurs de jeux par GLM. Le problème était que je ne les avais pas ajoutés au projet dans l'explorateur de solutions de Visual Studio (alors qu'ils étaient dans le dépôt du projet).

0voto

N00b Pr0grammer Points 2900

J'ai eu ce problème en même temps que l'erreur LNK2038, et j'ai suivi la procédure suivante poste pour séparer les DLLs RELEASE et DEBUG. Au cours de ce processus, j'ai nettoyé l'ensemble du dossier où résidaient ces dépendances.

Heureusement, j'avais une sauvegarde de tous ces fichiers, et j'ai récupéré le fichier pour lequel cette erreur était lancée dans le dossier DEBUG pour résoudre le problème. Le code d'erreur était en quelque sorte trompeur car j'ai dû passer beaucoup de temps à retrouver cette astuce dans l'une des réponses de ce post.

J'espère que cette réponse aidera quelqu'un dans le besoin.

0voto

Markus Weber Points 346

Je l'ai résolu en en ajoutant un projet existant à mon solution que je a oublié d'ajouter dans la première fois.

0voto

zadane Points 934

J'ai eu la même erreur :

fatal error LNK1104: cannot open file 'GTest.lib;'

Cela a été causé par le ; à la fin. Si vous avez plusieurs bibliothèques, elles doivent être séparées par un espace vide (barre d'espace), sans virgule ni point-virgule !

Alors n'utilisez pas ; ou toute autre chose lors de l'énumération des bibliothèques dans Project properties >> Configuration Properties >> Linker >> Input

0voto

user3500315 Points 31

J'ai essayé la solution ci-dessus mais cela n'a pas fonctionné pour moi. J'ai donc renommé l'exe et reconstruit la solution. Cela fonctionne pour moi.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X