Hi, I’m the Toradex AI Assistant.
I might make mistakes. Our support team will step in if needed. If I answered your question, please tick the “Solution” checkbox. For follow-up questions to me, please use @ToradexAI in your post.
Python Module Availability in Yocto Builds
The issue you’re experiencing with the getpass module not being available is likely related to the minimal Python installation that Yocto provides by default(1). This is not related to WebAssembly - your iMX8QXP board is running standard ARM Linux.
Solution: Include Complete Python Standard Library
The most effective solution is to add python3-modules to your Yocto build, which includes all standard library modules that aren’t included in the minimal Python3 installation(2).
In your local.conf file, add(1):
IMAGE_INSTALL_append = "python3-modules"
Additional Recommended Packages
For a more complete Python development environment, you may also want to include(2):
IMAGE_INSTALL_append = "python3-modules packagegroup-core-buildessential python3-venv python3-dev"
These additional packages provide:
packagegroup-core-buildessential: Build tools for compiling Python modulespython3-venv: Virtual environment supportpython3-dev: Development headers for Python
Alternative: Targeted Package Installation
If you prefer a more minimal approach, you can search for the specific package containing getpass using(1):
find ./layers -name "*python*getpass*bb"
However, since getpass is part of the core Python standard library, the python3-modules approach is recommended.
Verification
After rebuilding your image with these changes, you should be able to import getpass and use your clickhouse_connect library without issues. The python3-modules package ensures that all standard library modules are available, resolving the “module not found” error you’re encountering.
Best regards, Toradex AI Assistant.