Visual Studio 2017 統合環境で発生する “rc.exe が見つかりません” への対応

現象

Parallel Studio XE のバージョン 2017 Update4 にて Visual Studio 2017 (Communityを含む)向けの統合サポートが含まれました。しかし、インテル Visual Fortran コンパイラー + Visual Studio 2017 環境上でビルドすると下記のエラーが発生します。

対応方法

  • [その1]

下記のフォルダの内容を全てコピーして貼り付けます。

1.C:\Program Files (x86)\Windows Kits\10\bin\10.0.15063.0\x86 をコピー
2.C:\Program Files (x86)\Windows Kits\10\bin\x86 に貼り付け

3.C:\Program Files (x86)\Windows Kits\10\bin\10.0.15063.0\x64 をコピー
4.C:\Program Files (x86)\Windows Kits\10\bin\x64 に貼り付け

bin 以下に x86 や x64 のファルダがない場合はフォルダを新規作成してください。そのままフォルダごとコピー&ペーストするとシンプルです。

  • [その2]

スタートメニューから Visual Studio 2017 のインストーラーを起動して、VC++ 2015.3 v140 ツールセット (x86, x64)にチェックを入れてインストールします。

Visual Studio 2017 環境でインテル Visual Fortran コンパイラーの利用を検討されている方は、Visual Studio 2017 のインストーラーから、回避策の通りツールセットを選択してインストールしてください。ディスクスペースを 1.5 GB ほど使用しますが、一番手間が少ない方法です。

原因

手元の環境で再現しなかったので調べてみたところ、Visual Studio 2017 のみインストールされている環境で発生しました。Visual Studio 2017 に含まれる Windows 10  SDK のバージョン 10.0.15063.0 だけインストールされた状態だと、インテル Visual Fortran コンパイラーの実行ファイル検索パスの参照で rc.exe 見つかりません。

Windows 10 SDK のバージョンアップによって rc.exe がバージョン毎のフォルダー以下に配置されるようになり、インテル Visual Fortran コンパイラーの検索パスでは見つけられない状態になっています。

Windows 10 SDK -新着情報- (外部リンク)

旧バージョンの Visual Studio がインストールされている環境だと、Windows SDK の以前のバージョンが検索パスにヒットするため発生しません。(私がメインで使用する検証環境では、Visual Studio 2017 と Visual Studio 2013、2015 がインストールされており、現象が発生しなかったため気が付きませんでした・・・)

インテル社が公開しているコンパイラーリリースノートを確認すると本件の現象について記載されており、以降のバージョンで対応が行われると思います。

インテル Visual Fortran コンパイラー 17.0 for Windows リリースノート (外部リンク)