2016-04-15 20 views
2

仮想マシンでbuildozerを使用して単純なpython3/kivyアプリケーションのapkをビルドしようとしています。まだ運がない。私は多くのエラー、インストールされたpip、更新されたbuildozer、pipインストールされたモールス、pnglab、sh、appdirs、py3のsetuptoolsを持っていましたが、今私はこのエラーを受け取りました。私はある日、ドロイドの開発を私の仕事にするつもりであるので、答えを非常に感謝します。ありがとうございました。これはエラーです:
はAttributeError:「コンテキスト」オブジェクトが属性「hostpython」Kivy Buildozer AttributeError: 'コンテキスト'オブジェクトに 'hostpython'属性がありません

トレースバックを持っていない:

Traceback (most recent call last): 
File "/usr/lib/python2.7/runpy.py", line 162, 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/TextEditor/.buildozer/android/platform/python-for android-master/pythonforandroid/toolchain.py", line 747, in <module> main() 
File "/home/kivy/Desktop/TextEditor/.buildozer/android/platform/python-for android-master/pythonforandroid/toolchain.py", line 744, in main ToolchainCL() 
File "/home/kivy/Desktop/TextEditor/.buildozer/android/platform/python-for android-master/pythonforandroid/toolchain.py", line 323, in __init__ getattr(self, args.command)(unknown) 
File "/home/kivy/Desktop/TextEditor/.buildozer/android/platform/python-for android-master/pythonforandroid/toolchain.py", line 105, in wrapper_func build_dist_from_args(ctx, dist, dist_args) 
File "/home/kivy/Desktop/TextEditor/.buildozer/android/platform/python-for android-master/pythonforandroid/toolchain.py", line 142, in build_dist_from_args build_recipes(build_order, python_modules, ctx) 
File "pythonforandroid/build.py", line 560, in build_recipes recipe.build_arch(arch) 
File "/home/kivy/Desktop/TextEditor/.buildozer/android/platform/python-for android-master/pythonforandroid/recipes/python2/__init__.py", line 44, in build_arch self.do_python_build(arch) 
File "/home/kivy/Desktop/TextEditor/.buildozer/android/platform/python-for android-master/pythonforandroid/recipes/python2/__init__.py", line 76, in do_python_build shprint(sh.cp, self.ctx.hostpython, self.get_build_dir(arch.arch)) 
AttributeError: 'Context' object has no attribute 'hostpython' 
# Command failed: python -m pythonforandroid.toolchain create --dist_name=myapp --bootstrap=sdl2 --requirements=kivy --arch armeabi-v7a --copy-libs 
# 
+0

おそらく、このエラーは$ buildozer android_new debugコマンドで表示されるはずです。 – Konrad

答えて

8

これは新しいのpython-ため、アンドロイドツールチェーンのバグに起因する(これはandroid_new buildozerターゲットが使用します)。 Pythonのバージョンターゲットを要件に追加することで、回避することができます。 requirements = kivy,python2

+0

いいアイデア、requirements = kivy、python2は本当に私のためには機能しませんでしたが、要件= kivy、pythonでした – Konrad

+0

新しいツールチェーン(buildozer android_newによって起動されます)では** python2 **、古いもの( 'buildozer android') - ** python ** –

+0

古いツールチェーンにはこの問題がありません – inclement

2

kivy 1.9 もしあなたbuildozer.specファイル

要件= kivy、python2でのpython 2で、あなたのコードのpython3 要件= kivy、のpython3のpython3要件に実際に

1

ため

requirements = kivy,python3crystax 

になり、あなたはCrytax NDKを必要とします10)の代わりにアンドロイドNDK

関連する問題