パソコンヲタクの雑記帳みたいな

パソコンヲタクが書いている備忘録だったりします。 不定期更新で内容が意味不明なのはご愛敬・・・

Visual Stuio 2017でBoostをコンパイルしたら'corecrt.h':No such file or directory

どうも。「某パソコンヲタク」ですw

Visual Studio 2017でBoost 1.64.0をコンパイルしようとしたら失敗したので,何とかして解決します。

b2 曰く,

C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.10.25017\include\crtdefs.h(10): fatal error C1083: include ファイルを開けません'corecrt.h':No such file or directory

ググってみたところ,Visual Studioの以下のパッケージがインストール済みであることが条件であるようです。
(ただし,パッケージの有無でコンパイル結果に変化があるかついては未確認。
最新版でパッケージ名が変更になったときは,それらしい項目を見つけてください。)

文字列だけだとわかりにくいと思うので,以下に画面を貼付けます。

C++ ユニバーサル Windows プラットフォーム ツール C++ ユニバーサル Windows プラットフォーム ツール
デスクトップ C++ x86およびx64用Windows 10 SDK (10.0.15063.0) デスクトップ C++ x86およびx64用Windows 10 SDK (10.0.15063.0)
VC++ 2017 v141 ツールセット (x86,x64) VC++ 2017 v141 ツールセット (x86,x64)

これでBoostがコンパイルできると思いますが,恐らくこの記事を見ている方は,一度でもb2.exeを起動しているはずなので,
以下の手順が必要です。
一時的に生成されるバッチファイルを削除しなければ,環境の変化が反映されないようです。

cd %TMP%
dir b2* /B
b2_msvc_14.10.25017_vcvars32_.cmd
b2_msvc_14.10.25017_vcvarsx86_amd64_.cmd
b2_msvc_14.10.25017_vcvarsx86_arm_.cmd
del b2*

削除が終わったらコンパイル&インストールです。
Boost使いの諸兄姉には不要とは思いますが,雑記帳とか備忘録なのでコマンドライン例を記載します。

b2 stage address-model=32 threading=multi,single variant=debug,release runtime-link=shared,static link=static
b2 stage address-model=32 threading=multi,single variant=debug,release runtime-link=shared link=shared
b2 install address-model=32 threading=multi,single variant=debug,release runtime-link=shared,static link=static --prefix=D:\Boost\
b2 install address-model=32 threading=multi,single variant=debug,release runtime-link=shared link=shared --prefix=D:\Boost\

テーマ:トラブルシューティング - ジャンル:コンピュータ

  1. 2017/05/21(日) 01:25:46|
  2. 修理等
  3. | トラックバック:0
  4. | コメント:0
<<GVIMとシンボリックリンク | ホーム | Visual Studio 2017でセットアップの操作に失敗しました。>>

コメント

コメントの投稿


管理者にだけ表示を許可する

トラックバック

トラックバックURLはこちら
https://nmrnbpw.blog.fc2.com/tb.php/356-935eb333
この記事にトラックバックする(FC2ブログユーザー)