我正在尝试为 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"
我可以做什么来解决这个问题?
第一件事 - 只是确保编辑注册表后重新启动?
接下来我会尝试在 GUI 中启用开发者模式。
--nowindows_enable_symlinks
(startup 标志)并使用 --noenable_runfiles
禁用运行文件。然而,这违背了张量流中的这个评论.bazelrc
,所以如果你正在构建 pip 包的话,YMMV。