You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Bazel构建Linux x86_64版本的TensorFlow Lite(R2.2)

解决macOS x86_64交叉编译Linux x86_64 TensorFlow Lite R2.2 JNI库的问题

步骤1:匹配Bazel版本

TensorFlow R2.2要求使用Bazel 0.29.1,先检查当前版本:

bazel --version

版本不符时,用Bazelisk指定版本运行:

bazelisk --version 0.29.1

步骤2:安装Linux交叉编译工具链

通过Homebrew安装x86_64 Linux目标的编译工具:

brew install x86_64-linux-gnu-gcc

步骤3:创建Bazel交叉编译配置文件

在TensorFlow源码根目录新建linux_x86_64.bazelrc,写入以下内容:

build:linux_x86_64 --crosstool_top=@bazel_tools//tools/cpp:toolchain
build:linux_x86_64 --host_crosstool_top=@bazel_tools//tools/cpp:toolchain
build:linux_x86_64 --cpu=x86_64-linux
build:linux_x86_64 --cxxopt="-std=c++11"
build:linux_x86_64 --linkopt="-lstdc++"
build:linux_x86_64 --extra_toolchains=@local_config_cc//:cc-toolchain-x86_64-linux-gnu

步骤4:设置交叉编译环境变量

终端中导出环境变量,指定Linux工具链路径:

export CC=x86_64-linux-gnu-gcc
export CXX=x86_64-linux-gnu-g++
export AR=x86_64-linux-gnu-ar
export LD=x86_64-linux-gnu-ld

步骤5:重新配置TensorFlow

运行./configure,配置过程中:

  • 询问是否为交叉编译配置时,选择Yes
  • 指定目标平台为x86_64 Linux
  • 工具链路径直接使用Homebrew默认安装路径(一般为/usr/local/bin/x86_64-linux-gnu-*)
  • 禁用Apple特有的加速选项(如Apple Accelerator),避免引入主机依赖

步骤6:执行交叉编译

运行以下命令构建Linux目标的JNI库:

bazel build --config=linux_x86_64 //tensorflow/lite/java:libtensorflowlite_jni.so

构建完成后,生成的文件位于bazel-bin/tensorflow/lite/java/目录下,可通过file命令验证架构:

file bazel-bin/tensorflow/lite/java/libtensorflowlite_jni.so

输出应显示为ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked。

内容的提问来源于stack exchange,提问作者Jake Wade

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.23 06:39:14