Including Python3 modules in generated SDK do not work (pandas, dunfell)

Daniel Adolfsson


I have been using Yocto for several years now and I really appreciate all the hard work you all are putting into this project!

I have up until now been able to find documentation or answers to questions that cover my issues. But this time I have not been able to find my way, maybe I am using the wrong search terms.

Some background,
Running on a custom embedded device, powered by a AM3552 soc, currently running Dunfell.

I have a recipe that compiles a software using CMake. CMake in turn uses a Python3 script in the build step to generate some source files based on a CSV file. That script uses the python3-pandas library.

In my recipe I include python3-pandas as a DEPENDS

# For some reason python3-pandas-native does not pull in its dependencies, pytz and dateutil.
# The same is true for dateutil which depend on six
DEPENDS += "python3-pandas-native python3-pytz-native python3-dateutil-native python3-six-native"

This works great for building the firmware image file.

But in the generated SDK or Extensible SDK the modules are not available.

$ which python3

$ python3
Python 3.8.2 (default, Feb 25 2020, 10:39:28)
[GCC 9.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import pandas
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ModuleNotFoundError: No module named 'pandas'

I have also tried using the extensible sdk but i get another error when trying devtool

devtool modify recipie fails with python error: Exception: ModuleNotFoundError: No module named '_sysconfigdata'

I am unsure how to continue, where should I look for the issue? I am assuming that "depending" on a native python package would cause it to be included in the SDK..? even thugh it is a python dependency?
This has worked for other recipies (non-python) dependencies.
It "feels" like somehow the python3 "install" in the sdk is not identical to the one that is used when building the images.

Best Regards

Daniel Adolfsson

Join to automatically receive all group messages.