由于符号链接,Tensorflow lite 构建在 Windows 上失败

问题描述 投票:0回答:1

我正在尝试为 Windows 10 构建tensorflow lite 2.16.2 (c++),当我运行此命令时出现此错误

bazel build -c opt //tensorflow/lite:tensorflowlite

我已经安装了 msys2,添加到路径,安装 bazel 6.2.1 并将其添加到路径,在我的机器上安装 LLVM,运行

python ./configure.py
对一切说“不”,最后运行 bazel 构建命令。

当我运行它时,出现以下错误:

ERROR: An error occurred during the fetch of repository 'python_x86_64-pc-windows-msvc':
   Traceback (most recent call last):
        File "C:/users/tyler/_bazel_tyler/rkret32s/external/rules_python/python/repositories.bzl", line 377, column 17, in _python_repository_impl
                rctx.symlink(python_bin, "python")
Error in symlink: java.io.IOException: Could not create symlink from C:/users/tyler/_bazel_tyler/rkret32s/external/python_x86_64-pc-windows-msvc/python.exe to C:/users/tyler/_bazel_tyler/rkret32s/external/python_x86_64-pc-windows-msvc/python: Cannot create symlink (name=C:\users\tyler\_bazel_tyler\rkret32s\external\python_x86_64-pc-windows-msvc\python, target=C:\users\tyler\_bazel_tyler\rkret32s\external\python_x86_64-pc-windows-msvc\python.exe): ERROR: src/main/native/windows/file-jni.cc(140): nativeCreateSymlink(\\?\C:\users\tyler\_bazel_tyler\rkret32s\external\python_x86_64-pc-windows-msvc\python, \\?\C:\users\tyler\_bazel_tyler\rkret32s\external\python_x86_64-pc-windows-msvc\python.exe): ERROR: src/main/native/windows/file.cc(523): CreateSymlink(\\?\C:\users\tyler\_bazel_tyler\rkret32s\external\python_x86_64-pc-windows-msvc\python.exe): createSymbolicLinkW failed (permission denied). Either Windows developer mode or admin privileges are required.
ERROR: C:/users/tyler/downloads/tensorflow-2.16.2/WORKSPACE:36:27: fetching python_repository rule //external:python_x86_64-pc-windows-msvc: Traceback (most recent call last):
        File "C:/users/tyler/_bazel_tyler/rkret32s/external/rules_python/python/repositories.bzl", line 377, column 17, in _python_repository_impl
                rctx.symlink(python_bin, "python")
Error in symlink: java.io.IOException: Could not create symlink from C:/users/tyler/_bazel_tyler/rkret32s/external/python_x86_64-pc-windows-msvc/python.exe to C:/users/tyler/_bazel_tyler/rkret32s/external/python_x86_64-pc-windows-msvc/python: Cannot create symlink (name=C:\users\tyler\_bazel_tyler\rkret32s\external\python_x86_64-pc-windows-msvc\python, target=C:\users\tyler\_bazel_tyler\rkret32s\external\python_x86_64-pc-windows-msvc\python.exe): ERROR: src/main/native/windows/file-jni.cc(140): nativeCreateSymlink(\\?\C:\users\tyler\_bazel_tyler\rkret32s\external\python_x86_64-pc-windows-msvc\python, \\?\C:\users\tyler\_bazel_tyler\rkret32s\external\python_x86_64-pc-windows-msvc\python.exe): ERROR: src/main/native/windows/file.cc(523): CreateSymlink(\\?\C:\users\tyler\_bazel_tyler\rkret32s\external\python_x86_64-pc-windows-msvc\python.exe): createSymbolicLinkW failed (permission denied). Either Windows developer mode or admin privileges are required.
ERROR: Error computing the main repository mapping: Encountered error while reading extension file 'requirements.bzl': no such package '@pypi//': no such package '@python_x86_64-pc-windows-msvc//': java.io.IOException: Could not create symlink from C:/users/tyler/_bazel_tyler/rkret32s/external/python_x86_64-pc-windows-msvc/python.exe to C:/users/tyler/_bazel_tyler/rkret32s/external/python_x86_64-pc-windows-msvc/python: Cannot create symlink (name=C:\users\tyler\_bazel_tyler\rkret32s\external\python_x86_64-pc-windows-msvc\python, target=C:\users\tyler\_bazel_tyler\rkret32s\external\python_x86_64-pc-windows-msvc\python.exe): ERROR: src/main/native/windows/file-jni.cc(140): nativeCreateSymlink(\\?\C:\users\tyler\_bazel_tyler\rkret32s\external\python_x86_64-pc-windows-msvc\python, \\?\C:\users\tyler\_bazel_tyler\rkret32s\external\python_x86_64-pc-windows-msvc\python.exe): ERROR: src/main/native/windows/file.cc(523): CreateSymlink(\\?\C:\users\tyler\_bazel_tyler\rkret32s\external\python_x86_64-pc-windows-msvc\python.exe): createSymbolicLinkW failed (permission denied). Either Windows developer mode or admin privileges are required.

我在最后看到权限错误,并尝试以管理员身份运行cmd,但没有成功。我不知道 chmod 的 Windows 等效项以及要提供给哪个文件夹。

我还尝试使用以下命令启用开发人员模式:

reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\AppModelUnlock" /t REG_DWORD /f /v "AllowDevelopmentWithoutDevLicense" /d "1"

我可以做什么来解决这个问题?

windows tensorflow bazel
1个回答
0
投票

第一件事 - 只是确保编辑注册表后重新启动?

接下来我会尝试在 GUI 中启用开发者模式

如果您无法让开发人员模式工作,那么我个人会尝试使用

--nowindows_enable_symlinks
startup 标志)并使用
--noenable_runfiles
禁用运行文件。然而,这违背了张量流中的这个评论
.bazelrc
,所以如果你正在构建 pip 包的话,YMMV。

© www.soinside.com 2019 - 2024. All rights reserved.