VS2005からVS2010に移行したところ、単純なプログラムをコンパイルできません。
#include <iostream>
using std::cout;
using std::endl;
int main()
{
cout << "Hello Visual Studio 2010 :)" << endl;
}
エラー-
1 error TRK0005: Failed to locate: "CL.exe". The system cannot find the file specified.
2 IntelliSense: cannot open source file "iostream"
3 IntelliSense: name followed by '::' must be a class or namespace name
4 IntelliSense: name followed by '::' must be a class or namespace name
5 IntelliSense: identifier "cout" is undefined
6 IntelliSense: identifier "endl" is undefined
[〜#〜] ps [〜#〜]:VS2010を使用するのは初めてですが、VS 2005での経験があります。
これは、「ユーザープロパティシート」の下にVS2005からVS2010に追加したディレクトリのリストです。
実行可能ファイル-
$(VCInstallDir)bin; $(VSInstallDir)Common7\Tools\bin; $(VSInstallDir)Common7\tools; $(VSInstallDir)Common7\ide; $(VSInstallDir); $(VSInstallDir)\SDK\v2.0\bin
含む-
$(VCInstallDir)include; $(VCInstallDir)atlmfc\include; $(FrameworkSDKDir)include
ライブラリ-
$(VCInstallDir)lib; $(VCInstallDir)atlmfc\lib; $(VCInstallDir)atlmfc\lib\i386; $(FrameworkSDKDir)lib; $(VSInstallDir); $(VSInstallDir)lib
ソース-
$(VCInstallDir)atlmfc\src\mfc; $(VCInstallDir)atlmfc\src\mfcm; $(VCInstallDir)atlmfc\src\atl; $(VCInstallDir)crt\src
他のバージョンのVS(2005、2008)が既にインストールされているいくつかの異なるマシンで同じ問題が発生しました。私はまた、あらゆる種類の奇妙なエラーに遭遇しました。
私は次のトリックがうまくいったことを発見しました、おそらくあなたのケースでもうまくいくでしょう:-VS2010の新しいインスタンスを開きます-def設定で新しいコンソールアプリケーションを作成します。 -コンパイルしてみてください:エラーが発生するはずです-「プロパティマネージャ」を開きます-プロジェクトのMicrosoft.Cpp.Win32.userプロパティシートを表示します-VC++ディレクトリをクリックします-「実行可能ディレクトリ」フィールドをクリックしますドロップダウンが表示されるはずです。ドロップダウンをクリックして、「編集」を選択します。上記にリストしたものと同様の必要なすべてのディレクトリーを含むと思われる継承された値の束が表示されます。 [親またはプロジェクトのデフォルトから継承]オプションをオフにします。再度ご確認の上、「OK」をクリックしてください。
-これをインクルード、ライブラリディレクトリなどについて繰り返します。-[適用]と[OK]をクリックします-プロジェクトを再ビルドし、これが機能するかどうかを確認します。
私はこれを一度だけ行う必要がありました。 VSを閉じて新しいプロジェクトを作成したら、コンパイルするだけで済みます。これを発見する前に、継承されたすべての値を手動で削除し、すべてのVSおよびSDKディレクトリへの絶対パスを追加しました。それもうまくいきましたが、もっと大変でした。
システムはVisual C++コンパイラー(CL.exe)を見つけることができませんでした...
あなたが試すべきこと:
Visual Studio 2010インストーラーを再実行し、プラットフォーム(x86またはAMD64)用のVisual C++ツールのインストールを選択したことを確認します。
インストーラーを修復モードで実行します。
これで問題が解決しない場合:
同じ問題があり、検索でこのページを見つけましたが、ユーザープロパティシートに関するラルフの回答を十分に理解できず、再インストールできませんでした。私はラルフの答えがうまくいったと思いますが、ソリューションエクスプローラーでプロジェクトを右クリックして[プロパティ]を選択すると表示される[プロパティページ]ダイアログを見ていました。 「物件管理人」と違うとは知らなかった。
それで、私はmsdnフォーラムで質問して、 回答 と プロパティシートの素敵な説明 を得ました。私にとってうまくいった解決策は、テキストエディターでユーザープロパティシートを編集し、すべてのパスを削除して、次のように空のままにすることでした。
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.Microsoft.com/developer/msbuild/2003">
</Project>
ユーザープロパティシートはMicrosoft.Cpp.Win32.user.props
下 <localappdata>\Microsoft\msbuild\v4.0
どこ <localappdata>
はc:\users\<username>\appdata\local
Win7の下。
なぜこれが機能したのかわかりませんが、このエラーが発生してインストールしました Visual Studio Power Commands これで解決しました。この拡張機能により、構成プロパティ-> VC++ディレクトリが追加され、ExecutableDirectoriesマクロを直接変更できるようになります。