簡體   English   中英

在Windows 10上獲取cudnn.h的bazel構建tensorflow-系統找不到指定的文件

[英]bazel build tensorflow on windows 10 getting cudnn.h- system cannot find the file specified

在Windows 10中嘗試使用bazel和python構建tensorflow-gpu時,我不斷收到此錯誤消息:

Cuda Configuration Error: Error reading C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v9.2/cuda/include/cudnn.h: ja
va.io.IOException: ERROR: src/main/native/windows/processes-jni.cc(239): CreateProcessW("grep" --color=never -A1 -E "#de
fine CUDNN_MAJOR" "C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v9.2/cuda/include/cudnn.h"): The system cannot fin
d the file specified.

這是我要運行的命令:

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

我已經確認C:/ Program Files / NVIDIA GPU Computing Toolkit / CUDA / v9.2 / cuda / include / cudnn.h在那里。

我試過從VS2015 x64本機工具命令提示符,cmd和powershell運行它,並得到相同的錯誤。

我正在使用bazel 0.16.1,CUDA 9.2,Anaconda3(Python 3.6.5)和CUDNN 7.2.1。 通過將其cuda文件夾解壓縮到我的C:\\ Program Files \\ NVIDIA GPU Computing Toolkit \\ CUDA \\ v9.2文件夾(即整個“ cuda”文件夾)中,我“安裝”了CUDDNN文件。 我在運行configure.py時在cudnn路徑問題中指定了C:\\ Program Files \\ NVIDIA GPU Computing Toolkit \\ CUDA \\ v9.2 \\ cuda路徑。 configure.py完成,沒有錯誤。

我還嘗試將CUDNN文件直接放置在C:\\ Program Files \\ NVIDIA GPU Computing Toolkit \\ CUDA \\ v9.2文件夾(而不是其中的cuda文件夾)中,並指定默認位置,並且仍然得到基本相同的錯誤:“ C:/ Program Files / NVIDIA GPU Computing Toolkit / CUDA / v9.2 / include / cudnn.h“:系統找不到指定的文件。

我已經將它們添加到我的路徑中(並重新啟動):

C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.2\bin
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.2\libnvvp
C:\tools\msys64
C:\tools\bazel
C:\tools\bazel\bazel.exe
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.2\extras\CUPTI\libx64

這些是我設置的系統變量:

BAZEL_SH  C:\tools\msys64\usr\bin\bash.exe
BAZEL_VC  C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC
BAZEL_VS  C:\Program Files (x86)\Microsoft Visual Studio 14.0

這是完整的錯誤:

ERROR: Skipping '//tensorflow/tools/pip_package:build_pip_package': error loading package 'tensorflow/tools/pip_package'
: Encountered error while reading extension file 'cuda/build_defs.bzl': no such package '@local_config_cuda//cuda': Trac
eback (most recent call last):
        File "C:/tensorflow/third_party/gpus/cuda_configure.bzl", line 1458
                _create_local_cuda_repository(repository_ctx)
        File "C:/tensorflow/third_party/gpus/cuda_configure.bzl", line 1185, in _create_local_cuda_repository
                _get_cuda_config(repository_ctx)
        File "C:/tensorflow/third_party/gpus/cuda_configure.bzl", line 909, in _get_cuda_config
                _cudnn_version(repository_ctx, cudnn_install_base..., ...)
        File "C:/tensorflow/third_party/gpus/cuda_configure.bzl", line 584, in _cudnn_version
                find_cuda_define(repository_ctx, cudnn_header_dir, "c...", ...)
        File "C:/tensorflow/third_party/gpus/cuda_configure.bzl", line 534, in find_cuda_define
                auto_configure_fail(("Error reading %s: %s" % (str(h...)))
        File "C:/tensorflow/third_party/gpus/cuda_configure.bzl", line 315, in auto_configure_fail
                fail(("\n%sCuda Configuration Error:%...)))

Cuda Configuration Error: Error reading C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v9.2/cuda/include/cudnn.h: ja
va.io.IOException: ERROR: src/main/native/windows/processes-jni.cc(239): CreateProcessW("grep" --color=never -A1 -E "#de
fine CUDNN_MAJOR" "C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v9.2/cuda/include/cudnn.h"): The system cannot fin
d the file specified.

WARNING: Target pattern parsing failed.
ERROR: error loading package 'tensorflow/tools/pip_package': Encountered error while reading extension file 'cuda/build_
defs.bzl': no such package '@local_config_cuda//cuda': Traceback (most recent call last):
        File "C:/tensorflow/third_party/gpus/cuda_configure.bzl", line 1458
                _create_local_cuda_repository(repository_ctx)
        File "C:/tensorflow/third_party/gpus/cuda_configure.bzl", line 1185, in _create_local_cuda_repository
                _get_cuda_config(repository_ctx)
        File "C:/tensorflow/third_party/gpus/cuda_configure.bzl", line 909, in _get_cuda_config
                _cudnn_version(repository_ctx, cudnn_install_base..., ...)
        File "C:/tensorflow/third_party/gpus/cuda_configure.bzl", line 584, in _cudnn_version
                find_cuda_define(repository_ctx, cudnn_header_dir, "c...", ...)
        File "C:/tensorflow/third_party/gpus/cuda_configure.bzl", line 534, in find_cuda_define
                auto_configure_fail(("Error reading %s: %s" % (str(h...)))
        File "C:/tensorflow/third_party/gpus/cuda_configure.bzl", line 315, in auto_configure_fail
                fail(("\n%sCuda Configuration Error:%...)))

Cuda Configuration Error: Error reading C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v9.2/cuda/include/cudnn.h: ja
va.io.IOException: ERROR: src/main/native/windows/processes-jni.cc(239): CreateProcessW("grep" --color=never -A1 -E "#de
fine CUDNN_MAJOR" "C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v9.2/cuda/include/cudnn.h"): The system cannot fin
d the file specified.

有什么想法我可能做錯了什么,或者我可能錯過了什么,或者接下來我可以檢查什么?

問題是cuda_configure.bzl的錯誤:它使用ctx.execute而不是ctx.action.run_shell 如果您願意向TensorFlow提交錯誤 ,那就太好了!

要解決此問題,請執行以下操作:將c:\\tools\\msys64\\usr\\bin到PATH。 那就是grep.exe所在的grep.exe ,因此ctx.execute可以在PATH上找到grep

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM