Dear All,
我目前遇到 Tensorflow Lite C++ 無法編譯成功的問題,還請達人幫忙解答!! 感恩
參考文件 :i.MX Machine Learning User's Guide 文件中章節 3.6 的部分。
運行平台 : i.MX8MP , BSP 5.10.35.2.0.0
運行步驟 :
>> source /opt/fsl-imx-xwayland/5.10-hardknott/environment-setup-cortexa53-crypto-poky-linux
>> cd tensorflow/lite/examples/label_image
>> g++ label_image.cc bitmap_helpers.cc ../../tools/evaluation/utils.cc \
-I=/usr/include/tensorflow/lite/tools/make/downloads/flatbuffers/include \
-I=/usr/include/tensorflow/lite/tools/make/downloads/absl -O1\
-DTFLITE_WITHOUT_XNNPACK -ltensorflow-lite -lstdc++ -lpthread -lm -ldl -lrt
Weilly
解決済! 解決策の投稿を見る。
Can you check this point?
After building the Yocto SDK, the TensorFlow Lite artefacts are located as follows:
• TensorFlow Lite shared library (libtensorflow-lite.a) in /usr/lib
• TensorFlow Lite header files in /usr/include
Hi, @Zhiming_Liu
我已確認 SDK 所生成的環境沒有此檔案 libtensorflow-lite.a
(1) cortexa53-crypto-poky-linu :
(2) x86_64-pokysdk-linux/
然後...我將 TOOLCHAIN_TARGET_TASK_append += " tensorflow-lite-staticdev" 加入至 local.conf
該動作 bitbake -c populate_sdk imx-image-full 就會產生錯誤,無法編譯完成。
Weilly
IMAGE_INSTALL_append += "packagegroup-imx-ml"
TOOLCHAIN_TARGET_TASK_append += " tensorflow-lite-staticdev tensorflow-lite-dev armnn-dev onnxruntime-dev"
试试在local.conf里加上这两行
Hi, @Zhiming_Liu
i have confirmed add it . so I know this toolchian's problem of "tensorflow-lite-staticdev"
BSP : L5.10.35.2.0.0
Platform : NXP i.MX8MPlus
Weilly
Yocto user guide has error about IMAGE_INSTALL_append ,it should add +
IMAGE_INSTALL_append += "packagegroup-imx-ml"
我这里编译也会出错,应该是这个版本的问题,你试试L5.4.70_2.3.0
Hi, @Zhiming_Liu
感謝你幫我測試 !!!! 真的有用心 !!
那可否請你幫忙向內部的 BSP 工程師 呈報此問題。
希望在未來的版本能改善 !! 重視此問題~
畢竟 BSP L5.4.70_2.3.0 所搭配的 Tensorflow 版本太低 ~ 還是希望使用 BSP L5.10.35.2.0.0
再次,感謝你的熱心有品質的解答 !!
Weilly
试着将local.conf里注释这两个,是可以下载的
#PACKAGE_CLASSES = "package_deb"
#EXTRA_IMAGE_FEATURES += "package-management"
Hi, @Zhiming_Liu
依照你的方法 (註解 local.conf 中的兩行資訊) , 我嘗試了一下!!
從 log 來看,似乎在 opencv 的編譯上出些問題。
你也有這個問題嗎 ? 幫忙比對一下 感謝!!!
Weilly
你试着把opencv下载下来的压缩包(download目录)以及它在build目录中解压出来的目录删掉,然后重新编译一下
Dear, @Zhiming_Liu
感謝你的細心幫忙, 我後來照著你的方式還是沒有成功編出有 tensorflow-lite-staticdev 的 SDK.
在這段時間 , 我也重新編譯 BSP L5.4.47 的版本. 能夠編譯出 SDK , 以及 Tensorflow DEMO.
剛剛靈光一現想到是不是降版本 (Tensorflow 2.4.1 -> 2.4.0)
就能解決 BSP L5.10.35 版本無法順利編譯 Tensorflow DEMO 的問題
測試後, 是可以順利產出執行檔.
再次感謝你之前的協助!!
Weilly
我测试过即将发布的L5.10.52(Tensorflow 2.5.0),是可以成功编译sdk的。
过两天就会发布,你可以试试。
L5.10.X开始tensorflow不支持静态库编译了,文档都没有即使更新,