I encountered an error while trying to compile my kivy app using buildozer. It's telling me no such file or directory. When I went to check the directory it's Reminder__armeabi-v7a/project.properties
but it seems it needs the directory as Reminder system__armeabi-v7a/project.properties
.
I don't know if it's advisable to rename the directory because I didn't create the directory. It was created automatically during the build process. Also when I tried renaming the folder to "Reminder system__armeabi-v7a/project.properties", I got the error saying "toolchain.py: error unrecognized argument system system", so I reverted the changes made, and I'm looking for another solution.
My buildozer.spec
file looks like this:
[app]
title = My Reminder System
package.name = Reminder system
package.domain = org.test
source.dir = .
source.include_exts = py,png,jpg,kv,atlas,txt,json
version = 0.1
requirements = python3,kivy,DateTime,SpeechRecognition
orientation = portrait
osx.python_version = 3
osx.kivy_version = 1.9.1
fullscreen = 0
android.logcat_filters = *:S python:D
android.arch = armeabi-v7a
android.allow_backup = True
ios.kivy_ios_url = https://github.com/kivy/kivy-ios
ios.kivy_ios_branch = master
ios.ios_deploy_url = https://github.com/phonegap/ios-deploy
ios.ios_deploy_branch = 1.10.0
ios.codesign.allowed = false
[buildozer]
log_level = 2
warn_on_root = 1
This is the buildozer output including the error message:
/home/umarfarouk/Reminder_system/implementation/.buildozer/android/platform/build-armeabi-v7a/dists/Reminder__armeabi-v7a/libs/armeabi-v7a/libpython3.8.so
[INFO]: Stripping libraries in private dir
[INFO]: Frying eggs in /home/umarfarouk/Reminder_system/implementation/.buildozer/android/platform/build-armeabi-v7a/dists/Reminder__armeabi-v7a/_python_bundle/_python_bundle/site-packages
[INFO]: Copying in SDL2 .java files from: /home/umarfarouk/Reminder_system/implementation/.buildozer/android/platform/build-armeabi-v7a/build/bootstrap_builds/sdl2/jni/SDL/android-project/app/src/main/java/org/libsdl/app
[INFO]: -> directory context /home/umarfarouk/Reminder_system/implementation/.buildozer/android/platform/build-armeabi-v7a/dists/Reminder__armeabi-v7a
[INFO]: Saving distribution info
[INFO]: <- directory context /home/umarfarouk/Reminder_system/implementation/.buildozer/android/platform/python-for-android
[INFO]: # Your distribution was created successfully, exiting.
[INFO]: Dist can be found at (for now) /home/umarfarouk/Reminder_system/implementation/.buildozer/android/platform/build-armeabi-v7a/dists/Reminder__armeabi-v7a
# Build the application #8
# Copy application source from /home/umarfarouk/Reminder_system/implementation
# Create directory /home/umarfarouk/Reminder_system/implementation/.buildozer/android/app
# Copy /home/umarfarouk/Reminder_system/implementation/user_data.json
# Copy /home/umarfarouk/Reminder_system/implementation/home2.kv
# Copy /home/umarfarouk/Reminder_system/implementation/lab2.py
# Copy /home/umarfarouk/Reminder_system/implementation/bin.txt
# Copy /home/umarfarouk/Reminder_system/implementation/login.Kv
# Copy /home/umarfarouk/Reminder_system/implementation/user_menu.kv
# Copy /home/umarfarouk/Reminder_system/implementation/home.kv
# Copy /home/umarfarouk/Reminder_system/implementation/calendar.kv
# Copy /home/umarfarouk/Reminder_system/implementation/lab.py
# Copy /home/umarfarouk/Reminder_system/implementation/lab3.kv
# Copy /home/umarfarouk/Reminder_system/implementation/voice.py
# Copy /home/umarfarouk/Reminder_system/implementation/lab3.py
# Copy /home/umarfarouk/Reminder_system/implementation/assignment.kv
# Copy /home/umarfarouk/Reminder_system/implementation/Courses.kv
# Copy /home/umarfarouk/Reminder_system/implementation/lab.kv
# Copy /home/umarfarouk/Reminder_system/implementation/reg.kv
# Copy /home/umarfarouk/Reminder_system/implementation/studio.py
# Copy /home/umarfarouk/Reminder_system/implementation/inspirational_quotes.txt
# Copy /home/umarfarouk/Reminder_system/implementation/popup.kv
# Copy /home/umarfarouk/Reminder_system/implementation/sign_up.kv
# Copy /home/umarfarouk/Reminder_system/implementation/new_login.kv
# Copy /home/umarfarouk/Reminder_system/implementation/style1.kv
# Copy /home/umarfarouk/Reminder_system/implementation/scheduler.kv
# Copy /home/umarfarouk/Reminder_system/implementation/advan.txt
# Copy /home/umarfarouk/Reminder_system/implementation/home.py
# Copy /home/umarfarouk/Reminder_system/implementation/Ttable.kv
# Copy /home/umarfarouk/Reminder_system/implementation/Advantages.txt
# Create directory /home/umarfarouk/Reminder_system/implementation/.buildozer/android/app/images
# Copy /home/umarfarouk/Reminder_system/implementation/images/11.jpg
# Copy /home/umarfarouk/Reminder_system/implementation/images/16.jpg
# Copy /home/umarfarouk/Reminder_system/implementation/images/9.jpg
# Copy /home/umarfarouk/Reminder_system/implementation/images/4.jpg
# Copy /home/umarfarouk/Reminder_system/implementation/images/10.jpg
# Copy /home/umarfarouk/Reminder_system/implementation/images/15.jpg
# Copy /home/umarfarouk/Reminder_system/implementation/images/s6.jpg
# Copy /home/umarfarouk/Reminder_system/implementation/images/convert5.jpg
# Copy /home/umarfarouk/Reminder_system/implementation/images/14.jpg
# Copy /home/umarfarouk/Reminder_system/implementation/images/s4.jpg
# Copy /home/umarfarouk/Reminder_system/implementation/images/convert4.jpg
# Copy /home/umarfarouk/Reminder_system/implementation/images/6.jpg
# Copy /home/umarfarouk/Reminder_system/implementation/images/12.jpg
# Copy /home/umarfarouk/Reminder_system/implementation/images/convert2.jpg
# Copy /home/umarfarouk/Reminder_system/implementation/images/convert6.jpg
# Copy /home/umarfarouk/Reminder_system/implementation/images/19.jpg
# Copy /home/umarfarouk/Reminder_system/implementation/images/8.jpg
# Copy /home/umarfarouk/Reminder_system/implementation/images/7.jpg
# Copy /home/umarfarouk/Reminder_system/implementation/images/13.jpg
# Copy /home/umarfarouk/Reminder_system/implementation/images/convert3.jpg
# Copy /home/umarfarouk/Reminder_system/implementation/images/2.jpg
# Copy /home/umarfarouk/Reminder_system/implementation/images/18.jpg
# Copy /home/umarfarouk/Reminder_system/implementation/images/convert1.jpg
# Copy /home/umarfarouk/Reminder_system/implementation/images/20.jpg
# Copy /home/umarfarouk/Reminder_system/implementation/images/5.jpg
# Copy /home/umarfarouk/Reminder_system/implementation/images/3.jpg
# Copy /home/umarfarouk/Reminder_system/implementation/images/1.jpg
# Copy /home/umarfarouk/Reminder_system/implementation/images/17.jpg
# Copy /home/umarfarouk/Reminder_system/implementation/images/s5.jpg
# Package the application
Traceback (most recent call last):
File "/usr/local/bin/buildozer", line 11, in <module>
load_entry_point('buildozer==1.2.0.dev0', 'console_scripts', 'buildozer')()
File "/usr/local/lib/python3.8/dist-packages/buildozer-1.2.0.dev0-py3.8.egg/buildozer/scripts/client.py", line 13, in main
Buildozer().run_command(sys.argv[1:])
File "/usr/local/lib/python3.8/dist-packages/buildozer-1.2.0.dev0-py3.8.egg/buildozer/__init__.py", line 1020, in run_command
self.target.run_commands(args)
File "/usr/local/lib/python3.8/dist-packages/buildozer-1.2.0.dev0-py3.8.egg/buildozer/target.py", line 92, in run_commands
func(args)
File "/usr/local/lib/python3.8/dist-packages/buildozer-1.2.0.dev0-py3.8.egg/buildozer/target.py", line 104, in cmd_debug
self.buildozer.build()
File "/usr/local/lib/python3.8/dist-packages/buildozer-1.2.0.dev0-py3.8.egg/buildozer/__init__.py", line 205, in build
self.target.build_package()
File "/usr/local/lib/python3.8/dist-packages/buildozer-1.2.0.dev0-py3.8.egg/buildozer/targets/android.py", line 1076, in build_package
self._update_libraries_references(dist_dir)
File "/usr/local/lib/python3.8/dist-packages/buildozer-1.2.0.dev0-py3.8.egg/buildozer/targets/android.py", line 1349, in _update_libraries_references
with io.open(project_fn, 'w', encoding='utf-8') as fd:
FileNotFoundError: [Errno 2] No such file or directory: '/home/umarfarouk/Reminder_system/implementation/.buildozer/android/platform/build-armeabi-v7a/dists/Reminder system__armeabi-v7a/project.properties'
umarfarouk@umarfarouk-VirtualBox:~/Reminder_system/implementation$
Why do I get this error message and how can I solve it?
I'm not familiar with buildozer, but the path in your error message contains a space, which is suspicious (unfortunately, many tools still fail to work with spaces in the path...). It seems to come from your package.name
variable in the buildozer.spec
, which is "Reminder system".
Simply renaming directories that you didn't make yourself is generally a bad idea. I'm glad you reverted that action.
The documentation of buildozer.spec
states this:
The Package name is one word with only ASCII characters and/or numbers. It should not contain any special characters. For example, if your application is named Flat Jewels, the package name can be flatjewels.
So I guess that changing that line to:
package.name = ReminderSystem
should solve the problem.