Bazel项目接入Tensorflow依赖时构建报错问题求助
问题根因
报错的核心原因是你在WORKSPACE中拉取的依赖包错误:你当前配置的@org_tensorflow指向的是TensorFlow Serving的源码仓,这个仓是TensorFlow的推理部署组件,本身不包含TensorFlow核心源码,自然不存在//tensorflow目录对应的BUILD包以及libtensorflow_cc编译目标,所以触发了包找不到的错误。
修复方案
1. 修改WORKSPACE配置
替换原有org_tensorflow的http_archive配置,拉取官方TensorFlow本体源码,同时补充TensorFlow依赖初始化逻辑:
load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") http_archive( name = "org_tensorflow", sha256 = "b96f7b6b7a50d8f08d6f0ab1b93af5b84a7ad8c1c6f0e4f03b37a911e8640d59", url = "https://github.com/tensorflow/tensorflow/archive/refs/tags/v2.7.0.tar.gz", ) load("@org_tensorflow//tensorflow:workspace.bzl", "tensorflow_dependencies") tensorflow_dependencies()
2. 保留原有BUILD配置
你现有BUILD文件中的依赖声明@org_tensorflow//tensorflow:libtensorflow_cc是正确的,无需修改。
3. 版本兼容校验
TensorFlow 2.7对Bazel版本有严格要求,需要使用3.7.2~4.2.2区间的Bazel版本,版本过高或过低都会触发额外的构建错误。
内容的提问来源于stack exchange,提问作者Rinnekioku
相关产品推荐
相关产品推荐

