请帮帮我。不知道这片瓜那少了什么!翻遍了所有可能的东西。我的操作系统是 OpenSuse Thumbleweed。Python 3.8 Buildozer 1.2.0.dev0。按照网站上的说明安装。如果您需要更多信息 - 询问。
[INFO]: Postbuilding android for armeabi-v7a
[INFO]: Postbuilding kivy for armeabi-v7a
[INFO]: # Installing pure Python modules
[INFO]: *** PYTHON PACKAGE / PROJECT INSTALL STAGE ***
[INFO]: The requirements (certifi) don't have recipes, attempting to install them with pip
[INFO]: If this fails, it may mean that the module has compiled components and needs a recipe.
[INFO]: -> directory context /home/vadiki/TestKivyMD/.buildozer/android/platform/build-armeabi-v7a/build
[DEBUG]: -> running python3 -m venv venv
[DEBUG]: Error: Command '['/home/vadiki/TestKivyMD/.buildozer/android/platform/build-armeabi-v7a/build/venv/bin/python3', '-Im', 'ensurepip', '--upgrade', '--default-pip']' returned non-zero exit status 1.
Exception in thread background thread for pid 13943:
Traceback (most recent call last):
File "/usr/lib64/python3.8/threading.py", line 932, in _bootstrap_inner
self.run()
File "/usr/lib64/python3.8/threading.py", line 870, in run
self._target(*self._args, **self._kwargs)
File "/home/vadiki/.local/lib/python3.8/site-packages/sh.py", line 1683, in wrap
fn(*rgs, **kwargs)
File "/home/vadiki/.local/lib/python3.8/site-packages/sh.py", line 2662, in background_thread
handle_exit_code(exit_code)
File "/home/vadiki/.local/lib/python3.8/site-packages/sh.py", line 2349, in fn
return self.command.handle_command_exit_code(exit_code)
File "/home/vadiki/.local/lib/python3.8/site-packages/sh.py", line 905, in handle_command_exit_code
raise exc
sh.ErrorReturnCode_1:
RAN: /home/vadiki/TestKivyMD/.buildozer/android/platform/build-armeabi-v7a/build/other_builds/hostpython3/desktop/hostpython3/native-build/python3 -m venv venv
STDOUT:
Error: Command '['/home/vadiki/TestKivyMD/.buildozer/android/platform/build-armeabi-v7a/build/venv/bin/python3', '-Im', 'ensurepip', '--upgrade', '--default-pip']' returned non-zero exit status 1.
STDERR:
Traceback (most recent call last):
File "/usr/lib64/python3.8/runpy.py", line 194, in _run_module_as_main
return _run_code(code, main_globals, None,
File "/usr/lib64/python3.8/runpy.py", line 87, in _run_code
exec(code, run_globals)
File "/home/vadiki/TestKivyMD/.buildozer/android/platform/python-for-android/pythonforandroid/toolchain.py", line 1276, in <module>
main()
File "/home/vadiki/TestKivyMD/.buildozer/android/platform/python-for-android/pythonforandroid/entrypoints.py", line 18, in main
ToolchainCL()
File "/home/vadiki/TestKivyMD/.buildozer/android/platform/python-for-android/pythonforandroid/toolchain.py", line 725, in __init__
getattr(self, command)(args)
File "/home/vadiki/TestKivyMD/.buildozer/android/platform/python-for-android/pythonforandroid/toolchain.py", line 153, in wrapper_func
build_dist_from_args(ctx, dist, args)
File "/home/vadiki/TestKivyMD/.buildozer/android/platform/python-for-android/pythonforandroid/toolchain.py", line 212, in build_dist_from_args
build_recipes(build_order, python_modules, ctx,
File "/home/vadiki/TestKivyMD/.buildozer/android/platform/python-for-android/pythonforandroid/build.py", line 603, in build_recipes
run_pymodules_install(
File "/home/vadiki/TestKivyMD/.buildozer/android/platform/python-for-android/pythonforandroid/build.py", line 769, in run_pymodules_install
shprint(host_python, '-m', 'venv', 'venv')
File "/home/vadiki/TestKivyMD/.buildozer/android/platform/python-for-android/pythonforandroid/logger.py", line 167, in shprint
for line in output:
File "/home/vadiki/.local/lib/python3.8/site-packages/sh.py", line 953, in next
self.wait()
File "/home/vadiki/.local/lib/python3.8/site-packages/sh.py", line 879, in wait
self.handle_command_exit_code(exit_code)
File "/home/vadiki/.local/lib/python3.8/site-packages/sh.py", line 905, in handle_command_exit_code
raise exc
sh.ErrorReturnCode_1:
RAN: /home/vadiki/TestKivyMD/.buildozer/android/platform/build-armeabi-v7a/build/other_builds/hostpython3/desktop/hostpython3/native-build/python3 -m venv venv
STDOUT:
Error: Command '['/home/vadiki/TestKivyMD/.buildozer/android/platform/build-armeabi-v7a/build/venv/bin/python3', '-Im', 'ensurepip', '--upgrade', '--default-pip']' returned non-zero exit status 1.
STDERR:
# Command failed: /usr/bin/python3 -m pythonforandroid.toolchain create --dist_name=myapp --bootstrap=sdl2 --requirements=python3,kivy --arch armeabi-v7a --copy-libs --color=always --storage-dir="/home/vadiki/TestKivyMD/.buildozer/android/platform/build-armeabi-v7a" --ndk-api=21 --ignore-setup-py --debug
# ENVIRONMENT:
# SHELL = '/bin/bash'
# SESSION_MANAGER = 'local/localhost.localdomain:@/tmp/.ICE-unix/1995,unix/localhost.localdomain:/tmp/.ICE-unix/1995'
# WINDOWID = '8388615'
# COLORTERM = 'truecolor'
# SDK_HOME = '/usr/lib64/jvm/java'
# XDG_CONFIG_DIRS = '/home/vadiki/.config/kdedefaults:/etc/xdg:/usr/etc/xdg'
# LESS = '-M -I -R'
# XDG_SESSION_PATH = '/org/freedesktop/DisplayManager/Session0'
# JDK_HOME = '/usr/lib64/jvm/java'
# GTK_IM_MODULE = 'cedilla'
# MACHTYPE = 'x86_64-suse-linux'
# G_BROKEN_FILENAMES = '1'
# HOSTNAME = 'localhost.localdomain'
# HISTSIZE = '1000'
# LANGUAGE = 'ru:en_US'
# FROM_HEADER = ''
# MINICOM = '-c on'
# JAVA_ROOT = '/usr/lib64/jvm/java'
# JAVA_HOME = '/usr/lib64/jvm/java'
# AUDIODRIVER = 'pulseaudio'
# JRE_HOME = '/usr/lib64/jvm/java'
# CPU = 'x86_64'
# SHELL_SESSION_ID = 'c7287e44c584434abb4b46fb0d60a366'
# JAVA_BINDIR = '/usr/lib64/jvm/java/bin'
# XMODIFIERS = '@im=local'
# DESKTOP_SESSION = '/usr/share/xsessions/default'
# ANDROIDAPI = '27'
# GTK_RC_FILES = '/etc/gtk/gtkrc:/home/vadiki/.gtkrc:/home/vadiki/.config/gtkrc'
# XCURSOR_SIZE = '24'
# GPG_TTY = '/dev/pts/1'
# GTK_MODULES = 'canberra-gtk-module'
# XDG_SEAT = 'seat0'
# PWD = '/home/vadiki/TestKivyMD'
# QEMU_AUDIO_DRV = 'pa'
# XDG_SESSION_DESKTOP = 'KDE'
# LOGNAME = 'vadiki'
# XDG_SESSION_TYPE = 'x11'
# MANPATH = '/usr/local/man:/usr/share/man'
# SYSTEMD_EXEC_PID = '1845'
# ANDROIDNDK = '/home/vadiki/.buildozer/android/platform/android-ndk-r19c'
# XAUTHORITY = '/run/user/1000/xauth_NvzWtx'
# LS_OPTIONS = '-N --color=tty -T 0'
# XKEYSYMDB = '/usr/X11R6/lib/X11/XKeysymDB'
# GTK2_RC_FILES = '/etc/gtk-2.0/gtkrc:/home/vadiki/.gtkrc-2.0:/home/vadiki/.config/gtkrc-2.0'
# XNLSPATH = '/usr/share/X11/nls'
# HOME = '/home/vadiki'
# SSH_ASKPASS = '/usr/libexec/ssh/ssh-askpass'
# LANG = 'ru_UA.UTF-8'
# LS_COLORS = 'no=00:fi=00:di=01;34:ln=00;36:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=41;33;01:ex=00;32:*.cmd=00;32:*.exe=01;32:*.com=01;32:*.bat=01;32:*.btm=01;32:*.dll=01;32:*.tar=00;31:*.tbz=00;31:*.tgz=00;31:*.rpm=00;31:*.deb=00;31:*.arj=00;31:*.taz=00;31:*.lzh=00;31:*.lzma=00;31:*.zip=00;31:*.zoo=00;31:*.z=00;31:*.Z=00;31:*.gz=00;31:*.bz2=00;31:*.tb2=00;31:*.tz2=00;31:*.tbz2=00;31:*.xz=00;31:*.avi=01;35:*.bmp=01;35:*.dl=01;35:*.fli=01;35:*.gif=01;35:*.gl=01;35:*.jpg=01;35:*.jpeg=01;35:*.mkv=01;35:*.mng=01;35:*.mov=01;35:*.mp4=01;35:*.mpg=01;35:*.pcx=01;35:*.pbm=01;35:*.pgm=01;35:*.png=01;35:*.ppm=01;35:*.svg=01;35:*.tga=01;35:*.tif=01;35:*.webm=01;35:*.webp=01;35:*.wmv=01;35:*.xbm=01;35:*.xcf=01;35:*.xpm=01;35:*.aiff=00;32:*.ape=00;32:*.au=00;32:*.flac=00;32:*.m4a=00;32:*.mid=00;32:*.mp3=00;32:*.mpc=00;32:*.ogg=00;32:*.voc=00;32:*.wav=00;32:*.wma=00;32:*.wv=00;32:'
# XDG_CURRENT_DESKTOP = 'KDE'
# KONSOLE_DBUS_SERVICE = ':1.373'
# PYTHONSTARTUP = '/etc/pythonstart'
# KONSOLE_DBUS_SESSION = '/Sessions/1'
# PROFILEHOME = '/home/vadiki/TestKivyMD'
# OSTYPE = 'linux'
# XDG_SEAT_PATH = '/org/freedesktop/DisplayManager/Seat0'
# QT_IM_SWITCHER = 'imsw-multi'
# LESS_ADVANCED_PREPROCESSOR = 'no'
# KONSOLE_VERSION = '210802'
# XSESSION_IS_UP = 'yes'
# KDE_SESSION_UID = '1000'
# LESSCLOSE = 'lessclose.sh %s %s'
# XDG_SESSION_CLASS = 'user'
# TERM = 'xterm-256color'
# G_FILENAME_ENCODING = '@locale,UTF-8,KOI8-R,CP1251'
# HOST = 'localhost.localdomain'
# XAUTHLOCALHOSTNAME = 'localhost.localdomain'
# LESSOPEN = 'lessopen.sh %s'
# USER = 'vadiki'
# COLORFGBG = '15;0'
# ANDROIDNDKVER = 'r23'
# KDE_SESSION_VERSION = '5'
# MORE = '-sl'
# CSHEDIT = 'emacs'
# DISPLAY = ':0'
# SHLVL = '1'
# WINDOWMANAGER = '/usr/bin/startplasma-x11'
# PAGER = 'less'
# QT_IM_MODULE = 'xim'
# CVS_RSH = 'ssh'
# XDG_VTNR = '7'
# XDG_SESSION_ID = '1'
# NDKAPI = '21'
# XDG_RUNTIME_DIR = '/run/user/1000'
# DEBUGINFOD_URLS = 'https://debuginfod.opensuse.org/'
# ANDROIDSDK = '/home/vadiki/.buildozer/android/platform/android-sdk'
# QT_AUTO_SCREEN_SCALE_FACTOR = '0'
# MANPATHISSET = 'yes'
# XCURSOR_THEME = 'breeze_cursors'
# XDG_DATA_DIRS = '/usr/share'
# KDE_FULL_SESSION = 'true'
# CONFIG_SITE = '/usr/share/site/x86_64-unknown-linux-gnu'
# PATH = '/home/vadiki/.buildozer/android/platform/apache-ant-1.9.4/bin:/home/vadiki/bin:/usr/local/bin:/usr/bin:/bin:/opt/gradle/gradle-7.2/bin:/home/vadiki/.local/bin/:/opt/gradle/gradle-7.2/bin:/home/vadiki/.local/bin/'
# DBUS_SESSION_BUS_ADDRESS = 'unix:path=/run/user/1000/bus'
# PROFILEREAD = 'true'
# KDE_APPLICATIONS_AS_SCOPE = '1'
# MAIL = '/var/spool/mail/vadiki'
# HOSTTYPE = 'x86_64'
# LESSKEY = '/usr/etc/lesskey.bin'
# KONSOLE_DBUS_WINDOW = '/Windows/1'
# _ = '/usr/local/bin/buildozer'
# PACKAGES_PATH = '/home/vadiki/.buildozer/android/packages'
# ANDROIDMINAPI = '21'
#
# Buildozer failed to execute the last command
# The error might be hidden in the log above this error
# Please read the full log, and search for it before
# raising an issue with buildozer itself.
# In case of a bug report, please add a full log with log_level = 2
vadiki@localhost:~/TestKivyMD>
这个问题是通过一个很长的试验和错误解决的。我提供我的解决方案。我希望有人会帮忙。在 thumbleweed 版本上测试的 OpenSuse 说明
安装 Kivy: https ://kivy.org/doc/stable/gettingstarted/installation.html
python3 -m pip install kivy[base] kivy_examples
安装 git:
须藤 zypper 安装 git
Buildozer 安装:3.1
https://pypi.org/project/buildozer/
或者
3.2 重要!!!检查 Buildozer 的路径,如果不存在,则在位于用户主文件夹中的 .bashrc 文件末尾添加以下行:
然后在终端中运行:
应该写:
确保构建布局
在当前目录中找不到 buildozer.spec。放弃。检查终端中的版本:
Cython 安装可以通过 yast2 安装
安装 python-for-android 和依赖项:5.1
pip install python-for-android
5.2 依赖项(全部通过 yast2 或终端):
此外,在尝试编译时,可能会出现以下错误。6.1 运行 buildozer android debug 时可能会出现错误:[警告]:如果发生链接器错误,请考虑安装 lld。通过安装lld解决:
须藤 zypper 安装 lld
6.2 下一个错误 ModuleNotFoundError: No module named '_ctypes' On Debian libffi-dev On OpenSuse libffi-devel
6.3 还有更多的错误,但我不记得了。他们通过安装软件包来解决。你可能不需要它——我不知道。
在终端中包含程序的文件夹中的所有内容之后,您需要执行:(
buildozer android clean如果您之前尝试编译应用程序)如果您不需要通过数据线在 android 设备上安装应用程序并运行,则无需部署即可运行
然后下载并安装。
该应用程序第一次安装没有问题,第二次(直接安装在前一个上)它写道它没有安装。它是通过从手机中删除安装并重新安装来解决的。
我希望有人会帮忙。