Visual Studio 2022でboost C++ 1.85.0のビルドが失敗

  • 新調したPCにVisual Studio 2022を新規インストールし、boost C++ 1.85.0のビルドを実行。
  • b2を実行するとビルドが失敗する。libもobjも生成されない。
  • “bin.v2\config.log”には”C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.40.33807\bin\Hostx64\vcvarsall.bat”が無い旨のエラー
  • “vcvarsall.bat”は”C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build\vcvarsall.bat”に存在している。
  • “tools\build\src\tools\msvc.jam”の内容をチェックすると、#1140でcl.exeのversionをチェックしている。clのversionは14.40.33807なので、MATCHしないために例外パスに流れている。
    • if [ MATCH “(14.3)” : $(version) ]
  • “14.3”を”14.4″に書き換えることで正常にビルドできるようになった。clのversionが14.4xになったことにより顕在化したmsvc.jamの不良である。
    • msvc.jamの担当者がclのファイルversionとtoolsetのversionを混同している? 今後も繰り返される可能性有。