Попытка скомпилировать TF 2.0 с помощью Bazel заканчивается неудачей. Я долго боролся с этой проблемой, посмотрел ее в Интернете, но не нашел решения этой проблемы. Несколько запущенных конфигураций (с или без Cuda, с или без создания zip-файла и т. Д.) В конечном итоге приводят к одной и той же ошибке.
Информация о системе:
- Платформа ОС иДистрибутив (Windows 10)
- TensorFlow установлен из (источника)
- Версия TensorFlow: 2.0 (основная ветвь 07 ноября 2019 года, если быть точным)
- Версия Python: 3.7
- Установлен с помощью virtualenv? Пип? conda ?: Нет
- Базельская версия (при компиляции из источника): 0.29.1
- GCC / Версия компилятора (при компиляции из источника): 8.1.0
- CUDA /версия cuDNN: 10,0 / 7
- Модель и память графического процессора: GeForce GTX 1050 15,88 ГБ ОЗУ
Мои действия:
1. git checkout master (in the TF git repo)
2. bazel clean
3. configure (all defaults except for python path and Cuda)
4. bazel build --config=cuda --define=no_tensorflow_py_deps=true tensorflow:tensorflow_cc.dll
Сообщение об ошибке:
ОШИБКА: C: / users / shahar / git / тензор потока / тензор потока / ядро / BUILD: 2537: 1: не удалось выполнить genrule // tenorflow / core: version_info_gen (выход 5) ОШИБКА ЗАПУСКА: невозможно запустить процесс:"C: / Program Files / WindowsApps / PythonSoftwareFoundation.Python.3.7_3.7.1520.0_x64__qbz5n2kfra8p0 / python.exe" C: \ users \ shahar_bazel_shahar \ duchsbgv \ execroot \ org_tensorflow \ bazel \ opt \ opt \ opt-out-x64_set-out\ git \ gen_git_source.zip - генерировать внешний / local_config_git / gen / spec.json внешний / local_config_git / gen / head external / local_config_git / gen / branch_ref bazel-out / x64_windows-opt / bin / тензор потока / ядро / util / version_info. cc --git_tag_override = Причина: (ошибка: 5): доступ запрещен.
Что я делаю не так?
Редактировать: добавили переход с @ László advice:
mklink /j c:\python "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.7_3.7.1520.0_x64__qbz5n2kfra8p0"
и использовали его, когда "configure" попросил меня, как для python.exe, так и для libs, но ошибка остается. подробности:
ОШИБКА: C: / users / shahar / git / tenorflow / tenorflow / core / BUILD: 2537: 1: Не удалось выполнить genrule // tenorflow / core: version_info_gen (Выход 5) ОШИБКА ЗАПУСКА: Невозможно запустить процесс: "C: /python/python.exe" C: \ users \ shahar_bazel_shahar \ duchsbgv \ execroot \ org_tensorflow \ bazel-out \ x64_windows-opt \ bin \ensorflow \ tools \ git \ gen_git_source.zip --generateexternal / local_config_git / gen / spec.json external / local_config_git / gen / head external / local_config_git / gen / branch_ref bazel-out / x64_windows-opt / bin / тензор потока / ядро / util / version_info.cc --git_tag_override = причина: ошибка: 5): Доступ запрещен.
Edit_2: Снова с помощью @ László help: Я запустил:
bazel info execution_root
получил путь, перейдите в него. Оттуда я запустил:
c:\python\python.exe c:\users\shahar\_bazel_shahar\duchsbgv\execroot\org_tensorflow\bazel-out\x64_windows-opt\bin\tensorflow\tools\git\gen_git_source.zip --generate external/local_config_git/gen/spec.json external/local_config_git/gen/head external/local_config_git/gen/branch_ref c:\tmp\foo.cc --git_tag_override=
и получил следующее сообщение об ошибке:
Traceback (последний вызов был последним): файл "\? \ C: \ Users \ Shahar \AppData \ Local \ Temp \ Bazel.runfiles_ltu2ig_a \ runfiles \ org_tensorflow \ tenorflow \ tools \ git \ gen_git_source.py ", строка 340, в генерируемом (args.generate, args.git_tag_override) файле" \? \ C: \ Users \ Shahar "\ AppData \ Local \ Temp \ Bazel.runfiles_ltu2ig_a \ runfiles \ org_tensorflow \ tenorflow \ tools \ git \ gen_git_source.py ", строка 273, в файле write_version_info (dest_file, git_version) сгенерировать write" \? \ C: \ Users \ Shahar \ App "\ Local \ Temp \ Bazel.runfiles_ltu2ig_a \ runfiles \ org_tensorflow \ensorflow \ tools \ git \ gen_git_source.py ", строка 228, в write_version_info open (имя файла," w "). Write (содержимое) FileNotFoundError: [Errno 2] Нет такогофайл или каталог: 'c: \ tmp \ foo.cc'