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

如何在Ubuntu中交叉编译适用于ARM64的TensorFlow r1.15 C++静态库

解决TensorFlow r1.15 C++静态库适配ARM64平台的方案

x86架构Ubuntu上编译的libtensorflow-core.a无法直接在ARM64平台使用,二者指令集不兼容。你需要针对ARM64架构重新编译TensorFlow静态库,以下是两种可行方案:

方案一:在x86 Ubuntu上交叉编译ARM64版本

  1. 安装ARM64交叉编译工具链
    在Ubuntu22.04上执行以下命令安装适配ARM64的编译工具:

    sudo apt update && sudo apt install gcc-aarch64-linux-gnu g++-aarch64-linux-gnu
    
  2. 配置TensorFlow编译参数
    进入TensorFlow的makefile目录,通过环境变量指定交叉编译工具:

    cd tensorflow-r1.15/tensorflow/contrib/makefile
    export TARGET_CC=aarch64-linux-gnu-gcc
    export TARGET_CXX=aarch64-linux-gnu-g++
    export TARGET_FLAGS="-march=armv8-a"
    
  3. 执行编译
    可选择官方脚本或直接调用make加速编译:

    # 方式1:使用官方编译脚本
    ./build_all_linux.sh
    # 方式2:直接调用make,并行编译数匹配CPU核心数
    make -j$(nproc) TARGET=aarch64
    

方案二:在ARM64设备/虚拟机上原生编译

如果有ARM64架构的Ubuntu系统(实体设备、云服务器或QEMU虚拟机均可),可直接原生编译:

  1. 安装编译依赖
    在ARM64 Ubuntu22.04上安装基础编译工具:
    sudo apt update && sudo apt install build-essential curl git python3 python3-pip
    
  2. 执行原编译脚本
    直接运行你之前使用的编译命令即可:
    ../tensorflow-r1.15/tensorflow/contrib/makefile/build_all_linux.sh
    

验证编译结果

编译完成后,用file命令检查静态库架构是否为ARM64:

file tensorflow/contrib/makefile/gen/lib/libtensorflow-core.a

输出应包含ARM aarch64字样,说明库适配ARM64平台。

内容的提问来源于stack exchange,提问作者Franklin-Wang

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.02 05:03:25