Clang на Windows

Прежде всего, я следовал "Getting Started: Building and Running Clang". В частности, я собрал его в соответствии с разделом "Using Visual Studio". Другими словами, я собрал его, используя Visual Studio 2010.

Во-вторых, я вручную установил пути include и библиотек в дистрибутив MinGW:

enter image description here

Простая программа, которую я пытаюсь скомпилировать:

#include 
using namespace std;

int main() {
    cout << "Hello, World!" << endl;
    return 0;
}

Я получаю следующий ответ от компилятора:

In file included from C:\MinGW\lib\gcc\mingw32\4.5.2\include\c++\iostream:39:
In file included from C:\MinGW\lib\gcc\mingw32\4.5.2\include\c++\ostream:39:
In file included from C:\MinGW\lib\gcc\mingw32\4.5.2\include\c++\ios:38:
In file included from C:\MinGW\lib\gcc\mingw32\4.5.2\include\c++\iosfwd:41:
In file included from C:\MinGW\lib\gcc\mingw32\4.5.2\include\c++\bits/postypes.h:41:
C:\MinGW\lib\gcc\mingw32\4.5.2\include\c++\cwchar:144:11: error: no member named 'fgetws' in the global namespace
  using ::fgetws;
        ~~^
C:\MinGW\lib\gcc\mingw32\4.5.2\include\c++\cwchar:146:11: error: no member named 'fputws' in the global namespace
  using ::fputws;
        ~~^
C:\MinGW\lib\gcc\mingw32\4.5.2\include\c++\cwchar:150:11: error: no member named 'getwc' in the global namespace
  using ::getwc;
        ~~^
C:\MinGW\lib\gcc\mingw32\4.5.2\include\c++\cwchar:151:11: error: no member named 'getwchar' in the global namespace
  using ::getwchar;
        ~~^
C:\MinGW\lib\gcc\mingw32\4.5.2\include\c++\cwchar:156:11: error: no member named 'putwc' in the global namespace
  using ::putwc;
        ~~^
C:\MinGW\lib\gcc\mingw32\4.5.2\include\c++\cwchar:157:11: error: no member named 'putwchar' in the global namespace
  using ::putwchar;
        ~~^
6 errors generated.
Build error occurred, build is stopped
Time consumed: 646  ms.  

Очевидный вопрос - почему я получаю это?

Кроме того, я хотел бы узнать больше деталей, а так как на сайте Clang представлена крайне краткая информация - я подумал, что кто-нибудь может прояснить мне следующие вопросы:

  1. Насколько я понимаю, Clang не имеет собственной стандартной библиотеки (stdc++, наверное, да?). Поэтому я должен использовать заголовки и библиотеки MinGW - я прав?
  2. В чем разница между сборкой Clang с помощью Visual Studio и MinGW?
  3. Должен ли я жестко прописывать пути включения в clang/lib/Frontend/InitHeaderSearch.cpp или я могу пропустить это и указать эти пути позже через опцию "-I", как я делаю на скриншоте выше?

23
задан Alexander Shukaev 16 January 2012 в 16:08
поделиться