Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

[Build] Fix Build setup for oneAPI backend on Windows

オープン
#3,609 コメント 1 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

評価

難易度
4/5
見積もり時間
3〜5日
初心者へのやさしさ
25/100
issue の種類
バグ
明瞭さ
おおむね明確
活発さ
停滞
技術スタック
cmake, cpp
領域
build-system

調査の方向性

まず afoneapi ターゲットの CMake 構成と関連する PR #3610 を確認し、oneAPI Basekit 2023.2 以降を使用する Windows 上で cmake --build . --target afoneapi を実行して失敗を再現します。Visual Studio Generator が sort_by_key targets と oneDPL headers を含めて afoneapi のビルドに成功すれば完了です。

索引モデルが issue の本文から書いたものです。

説明

build oneapi Windows

Versions of Intel's oneAPI Basekit after 2023.2 have changed the CMake workflow for using SYCL with Intel's compiler. Therefore, currently building ArrayFire with CMake and the Visual Studio Generator is not possible.

Description

  • Additional details about the errors during the build:

    1. Setting the language of a source file to SYCL causes the Visual Studio Generator to ignore and not set any Build Step to it. The first errors caused by this are observed on the sort_by_key_${SBK_TYPE} targets required by target afoneapi

    2. When adding SYCL to a target, the DPL includes are by default not added to the include directories of the targets causing a include not found compilation error on the #include <oneapi/dpl/algorithm> lines.

  • What do you suspect is causing the issue?/Fixes

    1. According to Intel oneAPI DPC++ Compiler Reference, a find_package(IntelSYCL REQUIRED) and add_sycl_to_target lines are required in CMake to force a source file to be build with a SYCL compiler. Furthermore, a newer CMake version requisites must also be set.
    2. To fix this, a find_package(oneDPL REQUIRED) must be added for cmake to find the dpl package. Then, it must be added to the include directories of the target.
  • Which steps in the (wiki)[https://github.com/arrayfire/arrayfire/wiki] failed: cmake --build . --target afoneapi

  • What operating system and/or distro are you using?: Windows 10/11

  • Versions of the packages related to this bug: oneAPI Basetoolkit >= 2023.2

For more information look at the PR #3610

主要言語
C++
スター
4.9k
フォーク
555
平均マージ
1時間 24分
マージ済み PR(30日)
1

コントリビューションガイド

コントリビューションガイドを開く

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

arrayfire/arrayfire のほかの issue

arrayfire/arrayfire の issue をすべて見る

似ている issue

C++ の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。