149 votes

Visual Studio ne peut pas construire à cause de rc.exe

J'ai cherché en ligne et je n'ai rien trouvé qui ressemble à mon problème.

J'ai créé un projet C++ vide et ajouté un main.cpp avec un retour et je n'arrive pas à le construire. Voici le message que je reçois :

1>------ Build started: Project: Project1, Configuration: Debug Win32 ------
1>LINK : fatal error LNK1158: cannot run 'rc.exe'
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

Y a-t-il un endroit dans VS2012 où je peux spécifier où trouver cet exécutable ? J'ai installé le SDK de Windows 7 et j'ai cet exécutable à l'emplacement suivant :

C:\Program Files\Microsoft SDKs\Windows\v7.0\Bin

Je viens de Code::Blocks et j'utilise mingw-gcc sans aucun problème, mais dernièrement j'ai eu besoin de VS pour des implémentations gérées donc j'espère que quelqu'un a une idée.

274voto

Kat Cox Points 386

J'ai trouvé ça sur Google... Je suppose que dans votre cas, vous devez copier rc.exe y rcdll.dll a visual studio 2012\vc\bin ou là où vous l'avez installé :

Partie 2 : FIX LINK : fatal error LNK1158: cannot run ‘rc.exe’

Ajoutez-le à vos variables d'environnement PATH :

C:\Program Fichiers (x86) \Windows Kits \8.0\bin\x86

Copiez ces fichiers :

rc.exe
rcdll.dll

De

C:\Program Fichiers (x86) \Windows Kits \8.0\bin\x86

A

C:\Program Fichiers (x86) \Microsoft Visual Studio 11.0 \VC\bin

Ou j'ai aussi trouvé ceci :
Microsoft a omis quelques éléments dans son paquet MSVT. Comme personne ne sait s'ils ont été laissés de côté par erreur ou pour des raisons de licence, personne chez MSVC n'est trop intéressé à les donner. Quelques recherches sur Google ont permis de trouver des sources douteuses. Heureusement, Microsoft a finalement compris et a résolu ce problème et bien d'autres.

http://msdn.microsoft.com/vstudio/express/support/faq/default.aspx#pricing

http://msdn.microsoft.com/vstudio/express/support/install/

Une bonne partie des fichiers manquants de MSVT sont là mais les fichiers manquants du SDK ne le sont pas.

et ceci :
J'ai eu le même problème que j'ai résolu en faisant ceci :

  1. Installation de Microsoft .Net Framework 2.0
  2. Ajouter le chemin des fichiers .NET Framework (pour moi " C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727 ") dans Paramètres globaux du compilateur > Programmes > Chemins d'accès supplémentaires dans Code::Blocks.

Maintenant je peux construire et lier des fichiers de ressources sans erreurs.

65voto

MattAU Points 815

Nous avons rencontré ce problème avec nos constructions CMake/Visual Studio 2015 après avoir également installé VS2017 sur la machine. La solution correcte dans notre cas est de spécifier la version du kit Windows (8.1) à l'invite de commande de Visual Studio - sinon vous obtenez le kit Windows 10 par défaut qui n'inclut pas rc.exe dans le répertoire bin.

Par exemple, Menu Démarrer->Visual Studio 2015->VS2015 x64 Native Tools Command Prompt.

%comspec% /k "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" amd64 8.1

Notez l'option 8.1 à la fin

35voto

Tony Points 550

D'après ce que j'ai trouvé, si vous avez un système d'exploitation Windows 7, les étapes suivantes permettront de résoudre le problème :

1) aller sur C:\Program Fichiers (x86) \Microsoft SDKs \Windows\v7.1A\Bin

2) puis copier RC.exe et RcDll de ce fichier

3) aller à C:\Program Fichiers (x86) \Microsoft Visual Studio 12.0 \VC\bin et collez-y les deux fichiers que vous avez copiés.

J'ai eu le même problème, et la solution affichée ci-dessus n'a pas fonctionné. Ma solution en est dérivée, et elle a fonctionné pour moi. Si les solutions ci-dessus ne fonctionnent pas, vous pouvez essayer celle-ci.

18voto

OrangeSherbet Points 453

Ce site rc.exe L'erreur peut se produire si les versions du compilateur Visual C++ et du SDK Windows 10 ne correspondent pas à la même année Visual Studio. En général, la solution est de s'assurer que vous avez sur votre système, et que vous utilisez dans la compilation, VC++ et Windows SDK pour l'année Visual Studio que vous utilisez.

Par exemple, si vous avez Visual Studio 2017 ou 2019, et que vous avez installé Build Tools 2015 sans choisir d'installer son propre SDK Windows 2015 (l'installation par défaut ne l'installe pas !), et que vous essayez de l'utiliser pour compiler, vous pouvez rencontrer ce problème.

Dans mon cas, je disposais déjà de Visual Studio 2017. Lorsque j'ai essayé d'utiliser Build Tools 2015 pour compiler une bibliothèque python (ou probablement n'importe quel programme), cette même erreur 'rc.exe' s'est produite. J'ai lu que le compilateur C++ de VS2015 14.0 peut avoir un problème s'il essaie d'utiliser le SDK Windows 10 de Visual Studio 2017.

J'ai désinstallé Build Tools 2015, et je l'ai réinstallé, cette fois-ci en tant que personnalisé installation, sélection de l'installation les deux Visual C++ et les composants du SDK Windows 10. Cela a corrigé le problème.

MISE À JOUR : Je viens de regarder à nouveau Build Tools 2015, et apparemment il n'y a plus d'option d'installation personnalisée. Si c'est le cas, l'installation de Visual Studio 2015 avec les composants C++ et Windows SDK devrait également fonctionner. Edit : le commentateur a trouvé le outils de construction personnalisables installateur

11voto

Todd Rupper Points 111

Dans mon cas, j'avais une erreur de mélange entre des projets créés dans VS2015 et VS2017. Dans mon fichier .vcxproj, il y a une section appelée PropertyGroup Label="Globals">. J'avais une section pour TargetPlatformVersion=10.0.15063.0. Lorsque j'ai supprimé la TargetPlatformVersion, le problème a été résolu.

Désolé, je ne peux pas copier et coller le bloc ici, mais le format de codage de stackoverflows ne le permet pas.

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