MinGW (バージョン 4.7.2) を Visual Studio 2010 で動作させて、新しい C++11 機能の一部を使用しようとしています (残念ながら、私はまだ WindowsXP を使用しており、Visual Studio 2012 を使用できません)。まず、ファイル -> 新しいプロジェクト -> Visual C++ -> 一般 -> Makefile-Project でプロジェクトを作成しました。
General:
Build Command Line: mingw32-make.exe
Rebuild All Command Line: mingw32-make.exe rebuild all
Clean Command Line: mingw32-make.exe clean all
IntelliSense:
Include Search Path: C:\MinGW\lib\gcc\mingw32\4.7.2\include\c++;C:\MinGW\include;
Assembly Search Path: C:\MinGW\lib\gcc\mingw32\4.7.2;C:\MinGW\lib;
Additional Arguments: -std=c++11
そして、次の内容でメイクファイルを作成しました。
all:
g++ -std=c++11 -pthread -o Makefile_Test.exe main.cpp
コンパイルは問題なく実行されますが、ほとんどすべてが Visual Studio エディターで下線が引かれた波状の赤です。すなわち
std::vector<std::thread> threads;
std::vector
-> 'エラー: 名前空間 std にメンバ ベクトルがありません'
std::thread
-> 'エラー: 名前空間 std にメンバー スレッドがありません'
平std::cout << "";
std::cout
-> 'エラー: 名前空間 std にメンバ cout がありません'
しかし、もちろん、対応するヘッダーを含めました。Visual Studio はそれらを見つけることもできます (カーソルを #include に置く -> Ctrl+Shift+G でヘッダーが開きます)。私の MinGw フォルダーは次のようになります。
+ MinGW
|- bin
|- doc
|- include
|+ lib
|- gettext
|+ gcc
|+ mingw32
|+ 4.7.2
|- debug
|+ include
|- c++
|...
|- include-fixed
|- install-tools
|- libexec
|- mingw32
|- msys
|- share
|- var
また、sdf ファイルを数回削除して、Visual Studio に最初から再構築させようとしましたが、これらすべてのエラーが再び表示されました。
ここで私が間違っていることはありますか?