Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Buildozer has attribute errors and will not run #883

Closed
chitondihk opened this issue Apr 20, 2019 · 4 comments
Closed

Buildozer has attribute errors and will not run #883

chitondihk opened this issue Apr 20, 2019 · 4 comments

Comments

@chitondihk
Copy link

  • Python: Python 2.7
  • OS: Linux Ubuntu 14.04 LTS 64bit (vm on Wind7)
  • Buildozer: Latest (0.39)

Description

After setting up all dependencies and install Buildozer, I cd to my project folder and rand, buildozer android_new debug and got the following error:

Traceback (most recent call last):
File "/usr/local/bin/buildozer", line 9, in
load_entry_point('buildozer==0.39', 'console_scripts', 'buildozer')()
File "/usr/local/lib/python2.7/dist-packages/buildozer/scripts/client.py", line 13, in main
Buildozer().run_command(sys.argv[1:])
File "/usr/local/lib/python2.7/dist-packages/buildozer/init.py", line 1040, in run_command
print('Unknown command/target {}'.format(self.translate_target(command, inverse=True)))
AttributeError: 'Buildozer' object has no attribute 'translate_target'

buildozer.spec

Command:

buildozer android_new debug

Spec file:

[app]

# (str) Title of your application
title = Project1

# (str) Package name
package.name = mytsprj

# (str) Package domain (needed for android/ios packaging)
package.domain = tesselet.com

# (str) Source code where the main.py live
source.dir = .

# (list) Source files to include (let empty to include all the files)
source.include_exts = py,png,jpg,kv,atlas,file,txt,ogg,mp4,mpg,txt,ttf,TTF,otf,html

# (list) List of inclusions using pattern matching
#source.include_patterns = assets/*,images/*.png

# (list) Source files to exclude (let empty to not exclude anything)
#source.exclude_exts = spec

# (list) List of directory to exclude (let empty to not exclude anything)
#source.exclude_dirs = tests, bin

# (list) List of exclusions using pattern matching
#source.exclude_patterns = license,images/*/*.jpg

# (str) Application versioning (method 1)
version = 0.1

# (str) Application versioning (method 2)
# version.regex = __version__ = ['"](.*)['"]
# version.filename = %(source.dir)s/main.py

# (list) Application requirements
# comma seperated e.g. requirements = sqlite3,kivy
requirements = kivy==master,python2

# (str) Custom source folders for requirements
# Sets custom source for any requirements with recipes
# requirements.source.kivy = ../../kivy

# (list) Garden requirements
#garden_requirements =

# (str) Presplash of the application
presplash.filename = %(source.dir)s/cab/pres.png

# (str) Icon of the application
icon.filename = %(source.dir)s/cab/gico.png

# (str) Supported orientation (one of landscape, portrait or all)
orientation = landscape

# (list) List of service to declare
#services = NAME:ENTRYPOINT_TO_PY,NAME2:ENTRYPOINT2_TO_PY

#
# OSX Specific
#

#
author = Copyright © Tesselet

#
# Android specific
#

# (bool) Indicate if the application should be fullscreen or not
fullscreen = 1

# (list) Permissions
android.permissions = INTERNET, WRITE_EXTERNAL_STORAGE, READ_EXTERNAL_STORAGE

# (int) Android API to use
android.api = 26

# (int) Minimum API required
android.minapi = 19

# (int) Android SDK version to use
android.sdk = 24

# (str) Android NDK version to use
android.ndk = 17c

# (bool) Use --private data storage (True) or --dir public storage (False)
android.private_storage = False

# (str) Android NDK directory (if empty, it will be automatically downloaded.)
#android.ndk_path =

# (str) Android SDK directory (if empty, it will be automatically downloaded.)
#android.sdk_path =

# (str) ANT directory (if empty, it will be automatically downloaded.)
#android.ant_path =

# (str) python-for-android git clone directory (if empty, it will be automatically cloned from github)
#android.p4a_dir =

# (list) python-for-android whitelist
#android.p4a_whitelist =

# (bool) If True, then skip trying to update the Android sdk
# This can be useful to avoid excess Internet downloads or save time
# when an update is due and you just want to test/build your package
# android.skip_update = False

# (str) Android entry point, default is ok for Kivy-based app
#android.entrypoint = org.renpy.android.PythonActivity

# (list) List of Java .jar files to add to the libs so that pyjnius can access
# their classes. Don't add jars that you do not need, since extra jars can slow
# down the build process. Allows wildcards matching, for example:
# OUYA-ODK/libs/*.jar
#android.add_jars = foo.jar,bar.jar,path/to/more/*.jar

# (list) List of Java files to add to the android project (can be java or a
# directory containing the files)
#android.add_src =

# (str) python-for-android branch to use, if not master, useful to try
# not yet merged features.
#android.branch = master

# (str) OUYA Console category. Should be one of GAME or APP
# If you leave this blank, OUYA support will not be enabled
#android.ouya.category = GAME

# (str) Filename of OUYA Console icon. It must be a 732x412 png image.
#android.ouya.icon.filename = %(source.dir)s/data/ouya_icon.png

# (str) XML file to include as an intent filters in <activity> tag
#android.manifest.intent_filters =

# (list) Android additionnal libraries to copy into libs/armeabi
#android.add_libs_armeabi = libs/android/*.so
#android.add_libs_armeabi_v7a = libs/android-v7/*.so
#android.add_libs_x86 = libs/android-x86/*.so
#android.add_libs_mips = libs/android-mips/*.so

# (bool) Indicate whether the screen should stay on
# Don't forget to add the WAKE_LOCK permission if you set this to True
#android.wakelock = False

# (list) Android application meta-data to set (key=value format)
#android.meta_data =

# (list) Android library project to add (will be added in the
# project.properties automatically.)
#android.library_references =

# (str) Android logcat filters to use
#android.logcat_filters = *:S python:D

# (bool) Copy library instead of making a libpymodules.so
#android.copy_libs = 1

#
# iOS specific
#

# (str) Path to a custom kivy-ios folder
#ios.kivy_ios_dir = ../kivy-ios

# (str) Name of the certificate to use for signing the debug version
# Get a list of available identities: buildozer ios list_identities
#ios.codesign.debug = "iPhone Developer: <lastname> <firstname> (<hexstring>)"

# (str) Name of the certificate to use for signing the release version
#ios.codesign.release = %(ios.codesign.debug)s


[buildozer]

# (int) Log level (0 = error only, 1 = info, 2 = debug (with command output))
log_level = 2

# (int) Display warning if buildozer is run as root (0 = False, 1 = True)
warn_on_root = 1

# (str) Path to build artifact storage, absolute or relative to spec file
# build_dir = ./.buildozer

# (str) Path to build output (i.e. .apk, .ipa) storage
# bin_dir = ./bin

#    -----------------------------------------------------------------------------
#    List as sections
#
#    You can define all the "list" as [section:key].
#    Each line will be considered as a option to the list.
#    Let's take [app] / source.exclude_patterns.
#    Instead of doing:
#
#[app]
#source.exclude_patterns = license,data/audio/*.wav,data/images/original/*
#
#    This can be translated into:
#
#[app:source.exclude_patterns]
#license
#data/audio/*.wav
#data/images/original/*
#


#    -----------------------------------------------------------------------------
#    Profiles
#
#    You can extend section / key with a profile
#    For example, you want to deploy a demo version of your application without
#    HD content. You could first change the title to add "(demo)" in the name
#    and extend the excluded directories to remove the HD content.
#
#[app@demo]
#title = My Application (demo)
#
#[app:source.exclude_patterns@demo]
#images/hd/*
#
#    Then, invoke the command line with the "demo" profile:
#
#buildozer --profile demo android debug

Logs

Traceback (most recent call last):
  File "/usr/local/bin/buildozer", line 9, in <module>
    load_entry_point('buildozer==0.39', 'console_scripts', 'buildozer')()
  File "/usr/local/lib/python2.7/dist-packages/buildozer/scripts/client.py", line 13, in main
    Buildozer().run_command(sys.argv[1:])
  File "/usr/local/lib/python2.7/dist-packages/buildozer/__init__.py", line 1040, in run_command
    print('Unknown command/target {}'.format(self.translate_target(command, inverse=True)))
AttributeError: 'Buildozer' object has no attribute 'translate_target'

@AndreMiras
Copy link
Member

Dup of #812 with fix merged in #853
Simply pip install latest master and you should be good.

pip install --upgrade --user https://github.com/kivy/buildozer/archive/586152c.zip

@NikaRobaqidze
Copy link

Hello world!

Sorry but when error:
AttributeError: 'Buildozer' object has no attribute 'translate_target'

is disappear but I have new error:

Check configuration tokens

Unknown command/target android

after:

pip install --upgrade --user https://github.com/kivy/buildozer/archive/586152c.zip
Collecting https://github.com/kivy/buildozer/archive/586152c.zip
Downloading https://github.com/kivy/buildozer/archive/586152c.zip
/ 778kB 435kB/s
Requirement already satisfied, skipping upgrade: pexpect in c:\users\lenovo\appdata\local\programs\python\python37-32\lib\site-packages (from buildozer==0.40.dev0) (4.7.0)
Requirement already satisfied, skipping upgrade: virtualenv in c:\users\lenovo\appdata\local\programs\python\python37-32\lib\site-packages (from buildozer==0.40.dev0) (16.7.2)
Requirement already satisfied, skipping upgrade: sh in c:\users\lenovo\appdata\local\programs\python\python37-32\lib\site-packages (from buildozer==0.40.dev0) (1.12.14)
Requirement already satisfied, skipping upgrade: ptyprocess>=0.5 in c:\users\lenovo\appdata\local\programs\python\python37-32\lib\site-packages (from pexpect->buildozer==0.40.dev0) (0.6.0)
Building wheels for collected packages: buildozer
Building wheel for buildozer (setup.py) ... done
Created wheel for buildozer: filename=buildozer-0.40.dev0-cp37-none-any.whl size=70663 sha256=9b9844650f412d15e30e83f12320ab9770dea4e73514172e4bcb5aeac97586f1
Stored in directory: C:\Users\lenovo\AppData\Local\Temp\pip-ephem-wheel-cache-bauxs2ss\wheels\cb\a9\20\e1c0d61b3b72eb0c9b286de49763b0b9ef1ec341344c60d33b
Successfully built buildozer
Installing collected packages: buildozer
WARNING: The scripts buildozer-remote.exe and buildozer.exe are installed in 'C:\Users\lenovo\AppData\Roaming\Python\Python37\Scripts' which is not on PATH.
Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.
Successfully installed buildozer-0.40.dev0

C:\Users\lenovo\Desktop\project>buildozer android debug deploy run

Check configuration tokens

Unknown command/target android

@AndreMiras
Copy link
Member

Yes Windows is not supported anymore. Unless you use Windows Subsystem for Linux which I've never tried

@ma9edo
Copy link

ma9edo commented Apr 24, 2021

Dup رقم 812 مع الإصلاح المدمج في # 853
ببساطة ، قم بتثبيت أحدث نسخة رئيسية ويجب أن تكون جيدًا.

تثبيت نقطة - ترقية - المستخدم https://github.com/kivy/buildozer/archive/586152c.zip

Unknown command/target android`

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants