準備

環境変数の設定

コンパイラーは、次のバージョンの Microsoft* Visual Studio* に統合されます。

注: Microsoft* Visual Studio* 2017 のサポートはインテル® oneAPI 2022.1 で非推奨になりました。将来のリリースで削除される予定です。

Visual Studio* でデバッグおよび開発を含むすべての機能を利用するには、Visual Studio* Community Edition 以上が必要です。Visual Studio* Express Edition では、コマンドラインのビルドのみ利用できます。すべてのバージョンで Visual Studio* のインストール時に、Microsoft* C++ サポートが選択されていなければなりません。Visual Studio* 2017 以降では、このオプションを選択するには、カスタム・インストールを使用する必要があります。

通常 Windows* では、コマンドラインを使用する前に、環境変数を設定する必要はありません。インテル® コンパイラーのコマンドライン・ウィンドウは、これらの環境変数を自動的に設定します。環境変数を設定する必要がある場合は、各スイートの導入ガイドの説明に従って、環境スクリプトを実行してください。

デフォルトのインストール・ディレクトリー (<install_dir>) は C:\Program Files (x86)\Intel\oneAPI です。

GPU ドライバーのインストール (オプション)

インテル® GPU 向けのアプリケーションを開発および実行するには、最初に最新のインテル® GPU ドライバーをインストール (英語) する必要があります。

オプション 1: Microsoft* Visual Studio* 内のコマンドラインの使用

インテル® oneAPI DPC++/C++ コンパイラーには複数のドライバーが提供されています。

言語 Linux* ドライバー Windows* ドライバー オプションの形式 説明
C icx
icx-cc
icx-cc Linux* 形式

icx は Linux* 向けのデフォルトの (推奨) C ドライバーです。

icx を C++ ソースファイルに使用すると、ファイルは C++ ファイルとしてコンパイルされます。icx を使用して、C オブジェクト・ファイルをリンクします。

icx-cc は、icx の Microsoft* 互換のドライバーです。

C++ icpx icpx Linux* 形式

icpx は Linux* 向けのデフォルトの (推奨) C++ ドライバーです。

icpx を C ソースファイルに使用すると、ファイルは C++ ファイルとしてコンパイルされます。icpx を使用して、C++ オブジェクト・ファイルをリンクします。

C/C++ icx-cl icx
icx-cl
Windows* 形式

icx は Linux* 向けのデフォルトの (推奨) ドライバーです。

icx-cl は、icx の Microsoft* 互換のドライバーです。Linux* では、icx-cl を使用するには Microsoft* Visual Studio* パッケージが必要です。


次の構文を使用してコンパイラーを起動します。

{compiler driver} [option] file1 [file2...]

Microsoft* Visual Studio* 内のコマンドラインを使用してコンパイラーを起動するには、コマンドプロンプトを開き、コンパイルコマンドを入力します。次に例を示します。

icx hello-world.cpp

SYCL* コンパイルでは、C++ ドライバーで -fsycl オプションを使用します。

icx -fsycl hello-world.cpp

注: -fsycl を使用すると、コマンドで -fsycl-targets が明示的に指定されていない限り、-fsycl-targets=spir64 と見なされます。

オプション 2: Microsoft* Visual Studio* の使用

Microsoft* Visual Studio* でのインテル® DPC++/C++ コンパイラー向けプロジェクトのサポート

新しい DPC++ 向け Microsoft* Visual Studio* プロジェクトは、インテル® oneAPI DPC++/C++ コンパイラーを使用するように自動的に設定されます。

新しい Microsoft* Visual C++* (MSVC) プロジェクトは、インテル® oneAPI DPC++/C++ コンパイラーを使用するように手動で設定する必要があります。

注: .NET ベースの CLR C++ プロジェクトの種類は、インテル® oneAPI DPC++/C++ コンパイラーではサポートしていません。特定のプロジェクトの種類は、Visual Studio* のバージョンに依存します (例: CLR クラス ライブラリ、CLR コンソール アプリケーション、空の CLR プロジェクト)。

Microsoft* Visual Studio* でのインテル® DPC++/C++ コンパイラーの使用

実際の操作手順は、使用する Microsoft* Visual Studio* バージョンにより異なる場合があります。

  1. Microsoft* Visual C++* (MSVC) プロジェクトを作成するか、既存のプロジェクトを開きます。
  2. [ソリューション エクスプローラー] でインテル® oneAPI DPC++/C++ コンパイラーでビルドするプロジェクトを選択します。
  3. [プロジェクト] > [プロパティ] を開きます。
  4. 左のペインで、[構成プロパティ] カテゴリーを展開し、[全般] プロパティー・ページを選択します。
  5. 右のペインで、プラットフォーム・ツールセットを使用するコンパイラーに変更します。
    • C++ with SYCL* の場合、[Intel® oneAPI DPC++ Compiler (インテル® oneAPI DPC++/C++ コンパイラー)] を選択します。
    • C/C++ の場合、2 つのツールセットがあります。
      icx を起動するには、[Intel C++ Compiler <major version>] (例えば 2021) を選択します。
      icl を起動するには、[Intel C++ Compiler <major.minor>] (例えば 19.2) を選択します。
      あるいは、[Project] > [Intel Compiler] > [Use Intel oneAPI DPC++/C++ Compiler] を選択して、選択したプロファイルのすべてのサポートしているプラットフォームと構成のツールセットとしてコンパイラーのバージョンを指定します。
  6. [ビルド] >[プロジェクトのみ] > [リビルド] (シングル・プロジェクト) または [ビルド] > [ソリューションのリビルド] のいずれかを使用してリビルドします。

コンパイラー・バージョンの選択

複数のバージョンのインテル® oneAPI DPC++/C++ コンパイラーがインストールされている場合は、[Compiler Selection] ダイアログから使用するバージョンを選択できます。

  1. プロジェクトを選択してから、[ツール] > [オプション] > [Intel Compilers and Libraries] > [<compiler>] > [Compilers] を選択します。<compiler> の値は C++ または DPC++ です。
  2. [Selected Compiler] ドロップダウンでコンパイラー・バージョンを選択します。
  3. [OK] を選択します。

Microsoft* Visual Studio* C++ コンパイラーへの切り替え

プロジェクトがインテル® oneAPI DPC++/C++ コンパイラーを使用している場合は、Microsoft* Visual C++* コンパイラーに切り替えることができます。

  1. Microsoft* Visual Studio* でプロジェクトを選択します。
  2. 右クリックして、コンテキスト・メニューから [Intel Compiler] > [Use Visual C++] を選択します。

この操作を行うと、選択したソリューション・ファイルで Microsoft* Visual Studio* C++ コンパイラーが使用されます。[Do not clean project(s)] を有効にしない限り、プロジェクトのすべての構成が自動でクリーンされます。プロジェクトのクリーンを選択しない場合は、更新プロジェクトをリビルドして、すべてのソースファイルが新しいコンパイラーでコンパイルできることを確認する必要があります。

コマンドラインからのプログラムのビルド

次のステップを使用して、コンパイラーをテストし、プロジェクトをビルドします。

  1. テキストエディターを使用して、hello-world.cpp という名前のファイルを作成し、次の内容を保存します。
    #include <iostream> int main() { std::cout << “Hello, world!\n”; return 0; }
  2. hello-world.cpp をコンパイルします。
    icx hello-world.cpp
  3. hello-world.exe という名前の実行ファイルが生成され、実行すると次の文字列が出力されます。
    hello-world.exe
    出力
    Hello, world!

コンパイラー・オプションを使用して、コンパイルを指示および制御できます。例えば、次の 2 つのステップでオブジェクト・ファイルを作成し、最終的なバイナリーを出力できます。

  1. hello-world.cpp をコンパイルします。
    icx hello-world.cpp /c /Fohello-world.obj
    /c オプションでリンクを抑止し、/Fo オプションでオブジェクト・ファイルの名前を指定します。

  2. icx コンパイラーを使用して生成するアプリケーションのオブジェクト・コードをリンクし、実行ファイルを出力します。
    icx hello-world.obj /Fehello-world.exe
    /Fe オプションで生成する実行ファイルの名前を指定します。

利用可能なオプションの詳細は、コンパイラー・オプション (英語) を参照してください。

 

親トピック: インテル® oneAPI DPC++/C++ コンパイラー導入ガイド

Linux* 導入ガイド サンプルコードのコンパイルと実行