Numpy API 版本不匹配

Numpy API version mismatch

我正在尝试在 Gentoo 系统上从源代码安装 tensorflow(我想我需要这样做才能使用 CUDA 9.1)。

我能够构建 tensorflow,然后以用户身份安装它:

pip3 install --no-cache-dir --user /tmp/tensorflow_pkg/tensorflow-1.6.0rc1-cp35-cp35m-linux_x86_64.whl

当我尝试导入 tensorflow 时,我得到:

>RuntimeError                         Traceback (most recent call last)
>RuntimeError: module compiled against API version 0xc but this version of numpy is 0xb
>
>ImportError                           Traceback (most recent call last)
>ImportError: numpy.core.multiarray failed to import
>
>ImportError                         Traceback (most recent call last)
>ImportError: numpy.core.umath failed to import
>
>ImportError                        Traceback (most recent call last)
>ImportError: numpy.core.umath failed to import

所以我的猜测是,tensorflow 是针对与我的系统默认版本 (1.13.3) 不同的 numpy 版本构建的。

问题是如何解决?这个过程有很多我不熟悉的地方,所以我将不胜感激在执行以下任何操作时的任何指示:

  1. 告诉 tensorflow 构建使用系统范围的 numpy。 Tensorflow 使用 bazel 进行构建过程
  2. 找出想要的 numpy tensorflow 版本并将我的系统 numpy 更改为该版本。
  3. 还有别的吗???我不能在系统范围内对 pip 做太多事情,因为 pip 和 Gentoo 不合得来。我尝试通过 Anaconda 安装,但 tensorflow 看不到我的 GPU。使用 pip(曾经工作过)在 virtualenv 中安装没有用,我想是因为我已经安装了 cuda 9.1。也许我应该降级到 9.0???

感谢任何帮助!

有人我总是在我 post 之后想出如何做某事!我安装到 virtualenv 中并在 virtualenv 中做了 pip3 install --upgrade numpy。一切似乎都很好...