Windows* 環境でインテル® コンパイラーを使用してオフロード文を含むソースをコンパイルする際の注意点

インテル® DPC++/C++ コンパイラー

インテル® コンパイラー for Windows* では、オブジェクト (.obj) や実行形式 (.exe) ファイルの出力名称を指定する際に Visual C++* がサポートする /Fe オプションのほかに Linux* でおなじみの –o オプションを利用できます。

$ icl test.c /Fetest1 は $ icl test.c –o test1 と等価です。

しかし、ソースコードにインテル® Xeon Phi™ コプロセッサーへのインテル® コンパイラー拡張のオフロード文や OpenMP* 4.0 のオフロード構文が含まれている場合、-o オプションを指定するとエラーになります。これは、Windows* 向けのネイティブ・コンパイラーと、クロスコンパイラー間で引数の引き渡しが正しく行われていないと考えられます。

この場合、/Fe[ファイル名] オプションを指定しなければいけません。

Makefile を作成し、-o オプションで出力ファイル名を変更している場合、オフロードコードをコンパイルする際には注意してください。

タイトルとURLをコピーしました