通过 CMake 生成的 TFLite 共享库不起作用
Posted
技术标签:
【中文标题】通过 CMake 生成的 TFLite 共享库不起作用【英文标题】:TFLite Shared library generated through CMake not working 【发布时间】:2021-12-26 09:32:23 【问题描述】:系统信息: Debian 10
尝试从源代码安装 TensorFlow Lite: TensorFlow Lite 版本 2.4.1。 按照 tensorflow lite CMake 构建中的步骤在 LInux 主机上构建库。
描述当前行为: 默认的 CMakeLists 文件创建静态库。我们想通过CMake生成一个动态库 只能生成C++ TFLite静态库
描述预期的行为: 需要创建C++ TFLite动态库。
修改 CMakeLists 以生成共享库。但是生成的不工作。在图像中附加错误消息。 Modified CMakeLists file
【问题讨论】:
“但生成的那个不工作”对问题的描述不是很有用。请在问题帖子中添加有关该问题的更多详细信息。如果您收到错误消息,请也添加它。另请注意,Stack Overflow 不鼓励将 images 用于代码。而是将代码作为 text 粘贴到问题帖子中。另见How to Ask。 请提供足够的代码,以便其他人更好地理解或重现问题。 【参考方案1】:目前没有办法生成C++ TFLite动态库。
但是如果你要使用 C API,你可以生成 C TFLite 动态库。
https://www.tensorflow.org/lite/guide/build_cmake#build_tensorflow_lite_c_library
【讨论】:
嗨,可以使用这个命令通过 bazel 生成 C++ 共享库(bazel build -c opt //tensorflow/lite:libtensorflowlite.so)。但是 C++ CMake 共享库不起作用。是否有生成 C++ CMake 共享库的修复和工作流程以上是关于通过 CMake 生成的 TFLite 共享库不起作用的主要内容,如果未能解决你的问题,请参考以下文章
Tensorflow Lite tflite模型的生成与导入