I try to create a android app with python/kivy. The app is about editing raw files. My main problem is now, that buildozer compiles the rawpy package for the wrong architecture.
If I open the app on my android phone it crashes. When I took a look into adb log,I got the hint, that rawpy is for EM_X86_64 instead of EM_AARCH64. So it seems its compiled for windows and not for android phone.
ImportError: dlopen failed: "/data/user/0/org.test.myapp/files/app/_python_bundle/site-packages/rawpy/_rawpy.so" is for EM_X86_64 (62) instead of EM_AARCH64 (183)
python : Python for android ended.
I searched this problem in the web, and it seems I need to write an "recipe" to compile the python package for the right architecture.
I dont know how to do this. I found this site, which seems to explain it very well, but my python knowledge isnt that good I think.
Maybe you can give me some hints, how to create a recipe for rawpy?
This is what I got now, but it doesn work. ADB Logcat says: rawpy module not found. So with this recipe rawpy is not installed/compiled in android.
As you can see I added the arm64 Version of rawpy to the recipe.
from pythonforandroid.recipe import PythonRecipe
class RawpyRecipe(PythonRecipe):
version = '0.17.2'
url = 'https://files.pythonhosted.org/packages/b8/03/7218de31234c100a58cb7171059c94634b934804d8d7071e6a80e7d32502/rawpy-0.17.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl'
install_in_targetpython = True
depends = ['numpy','rawpy']
recipe = RawpyRecipe()