我正在尝试使用buildozer构建一个Kivy应用程序。我已升级到buildozer 0.39。构建失败:
File "~/.local/lib/python2.7/site-packages/sh.py", line 672, in handle_command_exit_code
raise exc
sh.ErrorReturnCode_1:
RAN: /bin/rm -f CMakeCache.txt CMakeFiles/
STDOUT:
/bin/rm: cannot remove 'CMakeFiles/': Is a directory
我已经安装了cmake版本3.5.1
cython版本0.21安装。
我已经使用here指令卸载了cmake并重新安装了版本3.14.2。
我删除了.buildozer目录。当我现在运行buildozer I时,得到问题:
RAN: ./autogen.sh
STDOUT:
./autogen.sh: 2: exec: autoreconf: not found
后
sudo apt install autoconf libtool
我现在得到错误:
STDOUT:
File "setup.py", line 159
print "--- using Tcl/Tk libraries at", TCL_ROOT
^
SyntaxError: Missing parentheses in call to 'print'. Did you mean print("--- using Tcl/Tk libraries at", TCL_ROOT)?
如果我卸载buildozer它似乎是python 2.7
/usr/local/lib/python2.7/dist-packages/buildozer-0.39.dist-info/*
我已经从python版本为2.7.12的目录安装了buildozer
如何将buildozer定位到python 2.7?
我怎样才能知道它是如何定位的?
我该如何使用这些信息?
我曾尝试在virtualenv中使用buildozer和python 3,但我得到了同样的错误。
我搞不清楚了。我看过Docker,但我不知道如何安装或使用它。它是否假设了buildozer的工作版本?它是什么?它会解决我的问题吗?
我跑的时候
docker run --volume "$HOME/.buildozer":/home/user/.buildozer --volume "$PWD":/home/user/hostcwd kivy/buildozer --version
'Buildozer 0.40.dev0'。
但是,当我试图跑
docker run --volume "$HOME/.buildozer":/home/user/.buildozer --volume "$PWD":/home/user/hostcwd kivy/buildozer android debug
我收到错误:
将/home/user/.buildozer/android/platform/android-ndk-r17c重命名为/home/jeff/.buildozer/crystax-ndk/crystax-ndk-10.3.2失败,因为/home/jeff/.buildozer/crystax- ndk / crystax-ndk-10.3.2不是目录
我现在已经评论过了
#android.ndk_path
来自buildozer.spec
我现在得到错误:
我删除了这个包的CMakeFiles目录并重新运行buildozer build并通过了(在dir .buildozer / android / platform / build / build / other_builds / jpeg / armeabi-v7a__ndk_target_21 / jpeg)