Kivy Buildozer VM sh.ErrorReturnCode_127 错误

标签 kivy buildozer

我正在尝试在 Kivy 虚拟机上使用 Buildozer 为 APK 构建一个简单的 Python 程序。每次跑buildozer android debug ,我收到以下错误

pid 2134:
Traceback (most recent call last):
  File "/usr/lib/python2.7/threading.py", line 801, in __bootstrap_inner
    self.run()
  File "/usr/lib/python2.7/threading.py", line 754, in run
    self.__target(*self.__args, **self.__kwargs)
  File "/usr/local/lib/python2.7/dist-packages/sh.py", line 1540, in wrap
    fn(*args, **kwargs)
  File "/usr/local/lib/python2.7/dist-packages/sh.py", line 2459, in    background_thread
    handle_exit_code(exit_code)
  File "/usr/local/lib/python2.7/dist-packages/sh.py", line 2157, in fn
    return self.command.handle_command_exit_code(exit_code)
  File "/usr/local/lib/python2.7/dist-packages/sh.py", line 815, in     handle_command_exit_code
raise exc
ErrorReturnCode_127: 

  RAN: /home/kivy/Desktop/Projects/Kivy_Test/.buildozer/android/platform        /build/build/other_builds/libffi/armeabi-v7a__ndk_target_21/libffi/autogen.sh

  STDOUT:
/home/kivy/Desktop/Projects/Kivy_Test/.buildozer/android/platform/build    /build/other_builds/libffi/armeabi-v7a__ndk_target_21/libffi/autogen.sh: 2:     exec: autoreconf: not found


  STDERR:


Traceback (most recent call last):
  File "/usr/lib/python2.7/runpy.py", line 174, in _run_module_as_main
    "__main__", fname, loader, pkg_name)
  File "/usr/lib/python2.7/runpy.py", line 72, in _run_code
    exec code in run_globals
  File "/home/kivy/Desktop/Projects/Kivy_Test/.buildozer/android/platform    /python-for-android/pythonforandroid/toolchain.py", line 1073, in <module>
    main()
  File "/home/kivy/Desktop/Projects/Kivy_Test/.buildozer/android/platform/python-for-android/pythonforandroid/toolchain.py", line 1067, in main
    ToolchainCL()
  File "/home/kivy/Desktop/Projects/Kivy_Test/.buildozer/android/platform/python-for-android/pythonforandroid/toolchain.py", line 576, in __init__
    getattr(self, args.subparser_name.replace('-', '_'))(args)
  File "/home/kivy/Desktop/Projects/Kivy_Test/.buildozer/android/platform/python-for-android/pythonforandroid/toolchain.py", line 151, in wrapper_func
    build_dist_from_args(ctx, dist, args)
  File "/home/kivy/Desktop/Projects/Kivy_Test/.buildozer/android/platform/python-for-android/pythonforandroid/toolchain.py", line 200, in     build_dist_from_args
    build_recipes(build_order, python_modules, ctx)
  File "pythonforandroid/build.py", line 562, in build_recipes
  File "/home/kivy/Desktop/Projects/Kivy_Test/.buildozer/android/platform/python-for-android/pythonforandroid/recipes/libffi/__init__.py", line 33, in     build_arch
    shprint(sh.Command('./autogen.sh'), _env=env)
  File "pythonforandroid/logger.py", line 178, in shprint
  File "/usr/local/lib/python2.7/dist-packages/sh.py", line 863, in next
    self.wait()
  File "/usr/local/lib/python2.7/dist-packages/sh.py", line 792, in wait
    self.handle_command_exit_code(exit_code)
  File "/usr/local/lib/python2.7/dist-packages/sh.py", line 815, in     handle_command_exit_code
    raise exc
sh.ErrorReturnCode_127: 

  RAN: /home/kivy/Desktop/Projects/Kivy_Test/.buildozer/android/platform/build/build/other_builds/libffi/armeabi-v7a__ndk_target_21/libffi/autogen.sh

  STDOUT:
/home/kivy/Desktop/Projects/Kivy_Test/.buildozer/android/platform/build    /build/other_builds/libffi/armeabi-v7a__ndk_target_21/libffi/autogen.sh: 2:     exec: autoreconf: not found


  STDERR:

# Command failed: /usr/bin/python -m pythonforandroid.toolchain create         --dist_name=kivytest --bootstrap=sdl2 --requirements=python3,kivy --arch         armeabi-v7a --copy-libs --color=always --storage-dir="/home/kivy/Desktop    /Projects/Kivy_Test/.buildozer/android/platform/build" --ndk-api=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

注意:我的 log_level在我的 buildozer.spec是 2. 我尝试安装一些依赖项,但无论出于何种原因,Kivy VM 都不让我安装。如果有人可以帮助我,那就太好了!

最佳答案

我遇到了同样的问题,在我的情况下,我缺少文件中描述的 python-for-android 所需的以下系统依赖项:python-for-android file

我缺少的依赖项:

  • 汽车制造
  • 自动配置
  • libltdl-dev

  • 我在 Buildozer 的 Github 论坛中找到了该解决方案:
    Github Question

    因此,您可能也缺少一些依赖项。
    对我来说,运行以下命令效果很好:
    sudo apt-get install automake
    sudo apt-get install autoconf
    sudo apt-get install libltdl-dev
    

    关于Kivy Buildozer VM sh.ErrorReturnCode_127 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54602700/

    相关文章:

    python - 我正在使用 buildozer 构建应用程序,但为 armeabi-v7a 构建 liblzma 有一些异常(exception)

    android - 如何在 android studio 中安装和使用 Python(带 Kivy)?

    class - Kivy - 另一个屏幕上的 slider 类值更改

    python - 在 kivy 中的文本上应用 .upper() 方法

    opencv - Android SDK 工具 : OpenCV requires Android SDK Tools revision 14 or newer

    android - 如何使用kivy打开默认的Android应用程序?

    python - Kivy中将BoxLayout切换为垂直并在Python代码中通过id获取小部件

    android - Kivy SQLalchemy 和 Android,没有名为 MySQLdb 的模块

    python - 无法使用 buildozer 构建 apk