本页介绍了如何构建 LiteRT tflite_runtime
Python
适用于 x86_64 和各种 ARM 设备的库。
以下说明已在 Ubuntu 16.04.3 64 位 PC (AMD64) 上进行了测试 、macOS Catalina (x86_64) 和 TensorFlow devel Docker 映像 tensorflow/tensorflow:devel.
前提条件
您需要安装 CMake 以及 TensorFlow 源代码的副本。请检查 使用 CMake 构建 LiteRT 页面了解详情。
如需为工作站构建画中画软件包,您可以运行以下命令: 命令。
PYTHON=python3 tensorflow/lite/tools/pip_package/build_pip_package_with_cmake.sh native
ARM 交叉编译
对于 ARM 交叉编译,建议使用 Docker,因为它可以简化
来设置跨构建环境此外,您还需要一个target
选项
目标架构
Makefile tensorflow/lite/tools/pip_package/Makefile
中有一个帮助工具
可以使用预定义的 Docker 容器调用构建命令。在
Docker 主机,您可以按如下方式运行构建命令。
make -C tensorflow/lite/tools/pip_package docker-build \
TENSORFLOW_TARGET=<target> PYTHON_VERSION=<python3 version>
可用的目标名称
tensorflow/lite/tools/pip_package/build_pip_package_with_cmake.sh
个脚本需要
以了解目标架构。下面列出了
目标。
目标 | 目标架构 | 评论 |
---|---|---|
阿尔姆夫 | 使用 Neon 的 ARMv7 VFP | 与 Raspberry Pi 3 和 Raspberry Pi 4 兼容 |
rpi0 | ARMv6 | 与 Raspberry Pi Zero 兼容 |
aarch64 | aarch64(ARM 64 位) | Coral Mendel Linux 4.0 Raspberry Pi(搭载 Ubuntu Server 20.04.01 LTS 64 位) |
原生 | 您的工作站 | 它使用“-mnative”进行构建优化 |
默认 | 您的工作站 | 默认目标 |
构建示例
以下是一些您可以使用的示例命令。
Python 3.7 的 armhf 目标
make -C tensorflow/lite/tools/pip_package docker-build \
TENSORFLOW_TARGET=armhf PYTHON_VERSION=3.7
Python 3.8 的 aarch64 目标
make -C tensorflow/lite/tools/pip_package docker-build \
TENSORFLOW_TARGET=aarch64 PYTHON_VERSION=3.8
如何使用自定义工具链?
如果生成的二进制文件与您的目标不兼容,则您需要使用
自己的工具链,或提供自定义构建标志。(选中
这个
了解您的目标环境)在这种情况下,您需要修改
tensorflow/lite/tools/cmake/download_toolchains.sh
使用您自己的工具链。
工具链脚本为
build_pip_package_with_cmake.sh
脚本。
变量 | 用途 | 示例 |
---|---|---|
ARMCC_PREFIX |
定义工具链前缀 | arm-linux-gnueabihf- |
ARMCC_FLAGS |
编译标记 | -march=armv7-a -mfpu=neon-vfpv4 |