/ / "Nieznana wersja kompilatora" - Boost uważa, że ​​kompilatorem VS2005 jest VS2015 - visual-studio, boost, visual-studio-2015, visual-studio-2005

"Nieznana wersja kompilatora" - Boost uważa, że ​​kompilatorem VS2005 jest VS2015 - visual-studio, boost, visual-studio-2015, visual-studio-2005

Potrzebuję więc budować projekty w Visual Studio2005 i Visual Studio 2015 na tym samym komputerze (64-ale, win10). Wracając do projektu zbudowanego w 2005 roku, Boost uważa, że ​​nadal używam kompilatora 2017 i zgłaszam różnego rodzaju błędy. Głównie ten: Unknown compiler version

Moje pytanie: Czy program Visual Studio 2015 ustawia coś na moim komputerzemaszyna, której pobudka będzie szukała, aby określić wersję kompilatora, czy też coś o czymś przypomina? Dla mojego życia nie mogę się dowiedzieć, gdzie boost szuka tych informacji.

Uważam, że właśnie w tym miejscu sprawdza się doładowanie:

#if (_MSC_VER > 1600)
#  if defined(BOOST_ASSERT_CONFIG)
#     error "Unknown compiler version - please run the configure tests and     report the results"
#  else
#     pragma message("Unknown compiler version - please run the configure     tests and report the results")
#  endif
#endif

Gdzie jest _MSC_VER zestaw?

Odpowiedzi:

-1 dla odpowiedzi nr 1

Aby zbudować system Boost.Build dla swojej wersji programu Visual Studio, uruchom plik bootstrap.bat w odpowiednim wierszu polecenia programu Visual Studio.

Podnieść.Kompilacja lubi domyślnie wyższe wersje Visual Studio podczas kompilacji. Gdy Boost.Build zdaje sobie sprawę, że ty mieć zainstalowanych więcej niż jedną wersję Visual Studio, utworzy zmienne środowiskowe, takie jak:

VS140COMNTOOLS -> Visual Studio 2015

VS80COMNTOOLS -> Visual Studio 2005

Możesz przełączyć się z kompilatora VC ++ 14.0 na kompilator VC ++ 8 przez:

  1. Zmiana nazwy zmiennej środowiskowej VC140COMNTOOLS - możesz umieścić "x" przed nią lub dodać _DISABLED do to.
  2. Nawigowanie do C:Użytkownicy {twoja nazwa użytkownika} AppDataTemp i usuwanie automatycznie generowanych skryptów "b2_msvc-8.0 _ {.. blahblah ..}. cmd" (powinno być 2 - jeden dla wersji 32-bitowych i jeden dla wersji 64-bitowych). Chociaż nazwa wydaje się być poprawne, nie daj się oszukać - plik ten nie jest generowany często i domyślnie jest najnowszą wersją Visual Studio na twoim komputerze.

Po wykonaniu obu tych kroków kompilator odpowiednio zregeneruje skrypty kompilacji i powinien działać.