WSL2编译TensorFlow2.6.0 pip包时出现wheel目标不存在错误
解决WSL2下编译TensorFlow 2.6.0时
//tensorflow/tools/pip_package:wheel目标不存在的问题 可能的原因及对应解决方法
1. 确认源码分支正确性
确保本地TensorFlow源码切换到了v2.6.0的官方标签,避免分支不对导致BUILD文件缺失目标:
git checkout v2.6.0
如果有本地修改,先暂存再切换:
git stash
2. 重新初始化Bazel工作区
重新执行配置命令,生成适配当前环境的BUILD文件和依赖配置:
./configure
根据WSL2环境的实际情况(如CUDA版本、Python路径)完成配置后,再尝试编译。
3. 替换为兼容的编译目标
部分TensorFlow 2.x版本中,pip_package的编译目标有调整,尝试使用以下命令:
- CUDA版本:
bazel build //tensorflow:tensorflow_pkg --repo_env=WHEEL_NAME=tensorflow --config=cuda
- CPU版本:
bazel build //tensorflow:tensorflow_pkg --repo_env=WHEEL_NAME=tensorflow_cpu
4. 匹配指定版本的Bazel
TensorFlow 2.6.0要求Bazel版本为3.7.2,版本不匹配会导致目标识别异常:
- 查看当前版本:
bazel --version
- 安装指定版本:
sudo apt-get remove bazel curl -fLO "https://github.com/bazelbuild/bazel/releases/download/3.7.2/bazel-3.7.2-installer-linux-x86_64.sh" chmod +x bazel-3.7.2-installer-linux-x86_64.sh ./bazel-3.7.2-installer-linux-x86_64.sh --user export PATH="$HOME/bin:$PATH"
5. 清理Bazel缓存
缓存异常可能导致目标识别错误,清理后重新编译:
bazel clean --expunge
内容的提问来源于stack exchange,提问作者Jakub Maciążek
相关产品推荐
相关产品推荐

