【问题标题】:Build static framework fro Tensorflow Lite on iOS在 iOS 上为 Tensorflow Lite 构建静态框架
【发布时间】:2021-01-26 00:04:46
【问题描述】:

我正在尝试交叉编译适用于 iOS 的 Tensorflow Lite(2.5,夜间构建)。我想建立一个静态框架。这是我使用的构建命令:

bazel build --config=ios_arm64 -c opt //tensorflow/lite/ios:TensorFlowLiteC_framework

TensorFlowLiteC_framework 目标在 tensorflow/tensorflow/lite/ios/BUILD.apple 中定义为

tflite_ios_static_framework(
    name = "TensorFlowLiteC_framework",
    hdrs = [
        ":c_api.h",
        ":common.h",
        ":xnnpack_delegate.h",
        "//tensorflow/lite/c:c_api_types.h",
    ],
    allowlist_symbols_file = ":allowlist_TensorFlowLiteC.txt",
    bundle_name = "TensorFlowLiteC",
    minimum_os_version = TFL_MINIMUM_OS_VERSION,
    deps = [
        ":tensorflow_lite_c",
    ],
)

我原以为生成的框架是一个静态框架,但它似乎是一个动态框架。在TensorFlowLiteC.framework 文件夹内,有一个二进制文件TensorFlowLiteC。如果我这样做file TensorFlowLiteC,我会得到:

TensorFlowLiteC: Mach-O universal binary with 1 architecture: [arm64:Mach-O 64-bit object arm64]
TensorFlowLiteC (for architecture arm64):   Mach-O 64-bit object arm64

对我来说,这似乎是一个动态库文件。据我所知,如果这是一个静态存档,我应该得到:current ar archive

有没有办法将 Tensorflow Lite 真正构建到 iOS 的实际静态框架中?

【问题讨论】:

    标签: ios xcode tensorflow2.0 static-libraries tensorflow-lite


    【解决方案1】:

    如果要使用静态框架,可以使用以下命令构建TensorFlowLiteC静态框架:

    bazel build --config=ios_fat -c opt //tensorflow/lite/ios:TensorFlowLiteC_static_framework
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-01-22
      • 1970-01-01
      • 2019-11-05
      • 1970-01-01
      • 2018-12-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多