1

您好,我已按照说明从源代码安装并在运行 ./configure 并使用 clang/++ 和提供的 ComputeCpp 路径以及对 OpenCL 是。

使用 Bazel 命令:

bazel build --config opt --config=sycl //tensorflow/tools  /pip_package:build_pip_package

我收到以下编译错误:

clang++: symbol lookup error: /usr/bin/clang++: undefined symbol: LLVMInitializeMipsAsmParser

我查找了符号,它属于 Rust,它没有安装在我的系统上,我也看不到如何安装它或安装 TensorFlow 所需的库。只有当我为 OpenCL 安装时才会发生这种情况。所以它似乎与 ComputeCpp 一起用于 OpenCL。我正在 Fedora 25 上安装(是的)

任何想法将不胜感激。另外,您如何在每次运行 ./Configure 时阻止它下载,它不仅可以读取它已经下载了文件,如果可以的话在哪里下载?

感谢 Hbyte

4

1 回答 1

1

首先,ComputeCpp 尚未正式支持 Fedora 25。虽然,我们会尽我们所能提供帮助。

您不需要更改任何 bazel 构建文件。您能否确认 ComputeCpp 安装在哪里?

我插入了 ompute++,现在发现位于我的 /usr/include 路径中的头文件没有被使用。

您的意思是在将 TF 配置为使用 OpenCL 后没有选择您的系统标头吗?

从 TensorFlow 设置的角度来看,您应该指向 ./configure位置。无需在任何地方复制标头/二进制文件。

例如我的 ComputeCpp 在我的主目录中

Do you wish to build TensorFlow with OpenCL support? [y/N] y OpenCL support will be enabled for TensorFlow Do you wish to build TensorFlow with CUDA support? [y/N] No CUDA support will be enabled for TensorFlow which: no clang++-3.6 in (/usr/lib64/ccache:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/luke/.local/bin:/home/luke/bin) Please specify which C++ compiler should be used as the host C++ compiler. [Default is ]: /usr/bin/clang++ Please specify which C compiler should be used as the host C compiler. [Default is /usr/local/bin/clang-3.6]: /usr/bin/clang Please specify the location where ComputeCpp for SYCL 1.2 is installed. [Default is /usr/local/computecpp]: /home/luke/ComputeCpp-CE-0.1.2-Linux 在 whl 包中,它归结为 Google,但据我所知,TensorFlow 也没有正式支持 Fedora 25。

如果您对构建系统有修复,请创建 Pull Request :)

如果您选择 GCC 作为您的主机编译器会发生什么?

是否可以在 GitHub 上打开一个问题来跟踪其进度?

于 2017-03-07T11:21:38.777 回答