我正在尝试构建我的第一个android应用程序。我安装了Kivy,buildozer并将“hello world”编码为here。然后,我输入“buildozer android debug”,在这个命令中抛出一个错误:“bla bla bla sdk directory is not specified”:
/usr/bin/python3 -m pythonforandroid.toolchain create --dist_name=test2 --bootstrap=sdl2 --requirements=python3,kivy --arch armeabi-v7a --copy-libs --color=always --storage-dir="/home/whiteblackgoose/PycharmProjects/mobileapp/test2/.buildozer/android/platform/build" --ndk-api=21
因此,我在命令中添加了一些参数并使其工作:
^{pr2}$所以当我试图运行它时,它抛出了一个新的错误:
File "/home/whiteblackgoose/PycharmProjects/mobileapp/test2/.buildozer/android/platform/build/build/other_builds/hostpython3/desktop/hostpython3/Lib/ctypes/__init__.py", line 7, in <module>
from _ctypes import Union, Structure, Array
ModuleNotFoundError: No module named '_ctypes'
STDERR:
我重新安装了cython并尝试导入ctypes和\u ctypes:
whiteblackgoose@whiteblackgoose-VirtualBox:~/PycharmProjects/mobileapp/test2$ python3
Python 3.6.8 (default, Jan 14 2019, 11:02:34)
[GCC 8.0.1 20180414 (experimental) [trunk revision 259383]] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import ctypes
>>> import _ctypes
>>>
正如你所看到的,当我进口的时候没有问题。但是如果我运行上面的命令,它会显示“ModuleNotFoundError:No module named''u ctypes'”。在
如何使buildozer的这个模块可见?问题是由安装的软件包或错误的版本引起的。。。在
您需要安装libffi头。这些来自于Ubuntu上的
libffi-dev
包,通常在其他发行版中是类似的。在之后,通过删除app dir中的
.buildozer
目录并重新构建来清理构建。在相关问题 更多 >
编程相关推荐