linux下终端配置并运行DPC++

先用有界面的电脑到官网找一下链接

https://www.intel.com/content/www/us/en/developer/articles/tool/oneapi-standalone-components.html#dpcpp-cpp

linux下终端配置并运行DPC++_第1张图片

直接一步到位,复制一下第二个链接

回终端下载

wget https://registrationcenter-download.intel.com/akdlm/IRC_NAS/89283df8-c667-47b0-b7e1-c4573e37bd3e/l_dpcpp-cpp-compiler_p_2023.1.0.46347_offline.sh

linux下终端配置并运行DPC++_第2张图片

运行.sh

此时当前文件夹应该有这个文件了,加一下权限,运行

chmod +x l_dpcpp-cpp-compiler_p_2023.1.0.46347_offline.sh
sudo ./l_dpcpp-cpp-compiler_p_2023.1.0.46347_offline.sh

安装

出现下面的界面
linux下终端配置并运行DPC++_第3张图片

接受,中间会有个安装eclipse,可以跳过,一路next
linux下终端配置并运行DPC++_第4张图片

等加载完,显示安装目录
linux下终端配置并运行DPC++_第5张图片
进入安装路径,配置一下

source setvars.sh intel64

这样就可以了

运行程序

类似c++编译

一个官方例子(注意不要在刚刚的安装路径新建测试文件)

// Copyright (C) 2020 Intel Corporation

// SPDX-License-Identifier: MIT

#include 
#include 
using namespace sycl;

const std::string secret {
  "Ifmmp-!xpsme\"\012J(n!tpssz-!Ebwf/!"
  "J(n!bgsbje!J!dbo(u!ep!uibu/!.!IBM\01" };

const auto sz = secret.size();

int main() {
  queue Q;

  char *result = malloc_shared<char>(sz, Q);
  std::memcpy(result,secret.data(),sz);

  Q.parallel_for(sz,[=](auto& i) {
      result[i] -= 1;
      }).wait();

  std::cout << result << "\n";
  return 0;
}
dpcpp test.cpp -o test
./test

警告

你可能注意到如上编译会出现一个warning,提示你当前使用的dpcpp命令选项已被废弃,并且在将来的发布版本中将被移除。建议改用icpx -fsycl命令选项来替代,所以最好这样编译:

在这里插入图片描述

你可能感兴趣的:(c++,linux,c++,开发语言,linux)