-
Notifications
You must be signed in to change notification settings - Fork 18
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
tensorflow-lite fixes #85
base: master
Are you sure you want to change the base?
Conversation
Do not install the tensorflow-lite 2.* library as tensorflow2-lite because packages will expect libtensorflow-lite.a and tensorflow-lite.pc. This also allows us to use the same pkg-config file. Signed-off-by: Vivien Didelot <[email protected]>
Add mickledore to the list of supported version. Signed-off-by: Vivien Didelot <[email protected]>
📝 TAOS-CI Version: 1.5.20200925. Thank you for submitting PR #85. Please a submit 1commit/1PR (one commit per one PR) policy to get comments quickly from reviewers. Your PR must pass all verificiation processes of cibot before starting a review process from reviewers. If you are new member to join this project, please read manuals in documentation folder and wiki page. In order to monitor a progress status of your PR in more detail, visit http://ci.nnstreamer.ai/. |
cibot: @vivien, A builder checker could not be completed because one of the checkers is not completed. In order to find out a reason, please go to http://ci.nnstreamer.ai/meta-neural-network/ci/repo-workers/pr-checker/85-0-664b/. |
@@ -13,7 +13,7 @@ SRC_URI = " \ | |||
file://0001-change-flatbuffers-version.patch \ | |||
file://0001-build-Add-bundle-static-lib-script-in-CMakeLists.txt.patch \ | |||
file://0001-build-Remove-mcpu-flag-when-build-XNNPACK.patch \ | |||
file://tensorflow2-lite.pc.in \ | |||
file://tensorflow-lite.pc.in \ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We have a few systems that install both tf-lite 1.x and tf2-lite 2.x, which forced us to install this file as tensorflow2-lite.pc.
For your needs, I'd recommend to make a "meta package" that creates symbolic links from tensorflow2-lite* to tensorflow-lite* for the compatibility of both tensorflow2* users and tensorflow* users.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I replied in the PR conversation for clarity ;)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This breaks packages using tensorflow2-lite.*
Please consider creating symbolic links from tensorflow2* to tensorflow* optionally or by another package.
I added the following to the concerned layer (here meta-raspberrypi) and this works fine:
But I do not think that requiring this for all layers using tensorflow-lite is the correct packaging approach, see below.
I understand your use case, however the package seems broken for a few reasons:
The r2.* branches are just a version bump from the tensorflow-lite project, not a different project. Because you have a special scenario, I would suggest that you install the various versions in different prefixes on your system (e.g. /opt/tflite/1.12, /opt/tflite/1.15, /opt/tflite/2.3, /opt/tflite/2.11, etc.) and configure your system or applications to look for the correct version there. A way to do that is to have a dynamic tensorflow-lite_%.bbappend that is enabled only for your use case, which moves the installed files to /opt/tflite/${PV} for example. What do you think? |
The tensorflow-lite_2.* recipe from meta-neural-network installs the library and pkg-config files as tensorflow2-lite*, because their users may use several versions of the same library. However packages such as libcamera-apps expect tensorflow-lite* files. While this is being discussed with the upstream meta-neural-network layer, adding a dynamic bbappend in meta-raspberrypi also helps documenting the support for this tensorflow-lite provider. Refs nnstreamer/meta-neural-network#85 Signed-off-by: Vivien Didelot <[email protected]>
The tensorflow-lite_2.* recipe from meta-neural-network installs the library and pkg-config files as tensorflow2-lite*, because their users may use several versions of the same library. However packages such as libcamera-apps expect tensorflow-lite* files. While this is being discussed with the upstream meta-neural-network layer, adding a dynamic bbappend in meta-raspberrypi also helps documenting the support for this tensorflow-lite provider. Refs nnstreamer/meta-neural-network#85 Signed-off-by: Vivien Didelot <[email protected]>
This PR makes it possible to compile libcamera-apps from meta-raspberrypi with tflite support.