通过 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模型的生成与导入

从 VS19 在 Linux 远程机器上生成 CMake 不起作用

为啥 PHP 媒体库不起作用?

tflite模型的生成

cmake 共享库

调用函数时 mpdf() 库不起作用