Skip to content

ImportError: cannot import name 'BuildDependencyInstallError' while compiling due to inconsistent p4a pip (Kivy-Buildozer) #3364

Description

@dotinspiredby

Running script in Google Colab to make .apk from Kivy Android code with following commands:

!pip3 install --user --upgrade buildozer
!sudo apt update
!sudo apt install -y git zip unzip openjdk-17-jdk python3-pip autoconf libtool pkg-config zlib1g-dev libncurses5-dev libncursesw5-dev libtinfo5 cmake libffi-dev libssl-dev
!pip3 install --user --upgrade Cython==0.29.33 virtualenv
!/root/.local/bin/buildozer init
!/root/.local/bin/buildozer android debug

if buildozer.spec I changed only one line:
requirements = python3,kivy,pillow

Every time Colab gives me the following traceback, the errors came from python-for-android:

[INFO]: <- directory context /content/.buildozer/android/platform/build-arm64-v8a_armeabi-v7a/build
[INFO]: <- directory context /content/.buildozer/android/platform/python-for-android
[INFO]: *** PYTHON PACKAGE / PROJECT INSTALL STAGE FOR ARCH: arm64-v8a ***
[DEBUG]: -> running pip3 install certifi chardet filetype idna requests six urllib3 --dry-run --break-system-packages --ignore-installed --disable-pip-version-check --only-binary=:all: --report /tmp/tmpyzf2cyck -q --platform=android_24_arm64_v8a --platform=android_24_aarch64 --python-version 3.14.2
[INFO]: Extra resolved pure python dependencies :
[INFO]:
[INFO]: charset-normalizer : 3.4.9
[INFO]:
[INFO]: The requirements (certifi, chardet, filetype, idna, requests, six, urllib3, https://files.pythonhosted.org/packages/98/2b/f97f1c193fb855c345d678f5077d6926034db0722df74c8f057020e05a25/charset_normalizer-3.4.9-py3-none-any.whl) don't have recipes, attempting to install them with pip
[INFO]: If this fails, it may mean that the module has compiled components and needs a recipe.
[INFO]: -> directory context /content/.buildozer/android/platform/build-arm64-v8a_armeabi-v7a/build
[DEBUG]: -> running python -m venv venv
[INFO]: Upgrade pip to latest version
[DEBUG]: -> running bash -c source venv/bin/activate && pip install -U pip
[DEBUG]: Traceback (most recent call last):
[DEBUG]: File "/content/.buildozer/android/platform/build-arm64-v8a_armeabi-v7a/build/venv/bin/pip", line 3, in
[DEBUG]: from pip._internal.cli.main import main
[DEBUG]: File "/content/.buildozer/android/platform/build-arm64-v8a_armeabi-v7a/build/venv/lib/python3.14/site-packages/pip/_internal/cli/main.py", line 11, in
[DEBUG]: from pip._internal.cli.autocompletion import autocomplete
[DEBUG]: File "/content/.buildozer/android/platform/build-arm64-v8a_armeabi-v7a/build/venv/lib/python3.14/site-packages/pip/_internal/cli/autocompletion.py", line 12, in
[DEBUG]: from pip._internal.cli.main_parser import create_main_parser
[DEBUG]: File "/content/.buildozer/android/platform/build-arm64-v8a_armeabi-v7a/build/venv/lib/python3.14/site-packages/pip/_internal/cli/main_parser.py", line 9, in
[DEBUG]: from pip._internal.build_env import get_runnable_pip
[DEBUG]: File "/content/.buildozer/android/platform/build-arm64-v8a_armeabi-v7a/build/venv/lib/python3.14/site-packages/pip/_internal/build_env/init.py", line 8, in
[DEBUG]: from pip._internal.build_env.installer import (
[DEBUG]: ...<2 lines>...
[DEBUG]: )
[DEBUG]: File "/content/.buildozer/android/platform/build-arm64-v8a_armeabi-v7a/build/venv/lib/python3.14/site-packages/pip/_internal/build_env/installer.py", line 14, in
[DEBUG]: from pip._internal.exceptions import (
[DEBUG]: ...<4 lines>...
[DEBUG]: )
[DEBUG]: ImportError: cannot import name 'BuildDependencyInstallError' from 'pip._internal.exceptions' (/content/.buildozer/android/platform/build-arm64-v8a_armeabi-v7a/build/venv/lib/python3.14/site-packages/pip/_internal/exceptions.py)
Exception in thread background thread for pid 125306:
Traceback (most recent call last):
File "/usr/lib/python3.12/threading.py", line 1075, in _bootstrap_inner
self.run()
File "/usr/lib/python3.12/threading.py", line 1012, in run
self._target(*self._args, **self._kwargs)
File "/root/.local/lib/python3.12/site-packages/sh/init.py", line 1709, in wrap
fn(*rgs, **kwargs)
File "/root/.local/lib/python3.12/site-packages/sh/init.py", line 2720, in background_thread
handle_exit_code(exit_code)
File "/root/.local/lib/python3.12/site-packages/sh/init.py", line 2411, in fn
return self.command.handle_command_exit_code(exit_code)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/root/.local/lib/python3.12/site-packages/sh/init.py", line 820, in handle_command_exit_code
raise exc
sh.ErrorReturnCode_1:

RAN: /usr/bin/bash -c 'source venv/bin/activate && pip install -U pip'

STDOUT:
Traceback (most recent call last):
File "/content/.buildozer/android/platform/build-arm64-v8a_armeabi-v7a/build/venv/bin/pip", line 3, in
from pip._internal.cli.main import main
File "/content/.buildozer/android/platform/build-arm64-v8a_armeabi-v7a/build/venv/lib/python3.14/site-packages/pip/_internal/cli/main.py", line 11, in
from pip._internal.cli.autocompletion import autocomplete
File "/content/.buildozer/android/platform/build-arm64-v8a_armeabi-v7a/build/venv/lib/python3.14/site-packages/pip/_internal/cli/autocompletion.py", line 12, in
from pip._internal.cli.main_parser import create_main_parser
File "/content/.buildozer/android/platform/build-arm64-v8a_armeabi-v7a/build/venv/lib/python3.14/site-packages/pip/_internal/cli/main_parser.py", line 9, in
from pip._internal.build_env import get_runnable_pip
File "/content/.buildozer/android/platform/build-arm64-v8a_armeabi-v7a/build/venv/lib/python3.14/site-packages/pip/_internal/build_env/init.py", line 8, in
from pip._internal.build_env.installer import (
...<2 lines>...
)
File "/content/.buildozer/android/platform/build-arm64-v8a_armeabi-v7a/build/venv/lib/python3.14/site-packages/pip/_internal/build_env/installer.py", line 14, in
from pip._internal.exceptions import (
...<4 lines>...
)
ImportError: cannot import name 'BuildDependencyInstallError' from 'pip._internal.exceptions' (/content/.buildozer/android/platform/build-arm64-v8a_armeabi-v7a/build/venv/lib/python3.14/site-packages/pip/_internal/exceptions.py)

STDERR:

Traceback (most recent call last):
File "", line 198, in _run_module_as_main
File "", line 88, in _run_code
File "/content/.buildozer/android/platform/python-for-android/pythonforandroid/toolchain.py", line 1290, in
main()
File "/content/.buildozer/android/platform/python-for-android/pythonforandroid/entrypoints.py", line 18, in main
ToolchainCL()
File "/content/.buildozer/android/platform/python-for-android/pythonforandroid/toolchain.py", line 721, in init
getattr(self, command)(args)
File "/content/.buildozer/android/platform/python-for-android/pythonforandroid/toolchain.py", line 104, in wrapper_func
build_dist_from_args(ctx, dist, args)
File "/content/.buildozer/android/platform/python-for-android/pythonforandroid/toolchain.py", line 163, in build_dist_from_args
build_recipes(build_order, python_modules, ctx,
File "/content/.buildozer/android/platform/python-for-android/pythonforandroid/build.py", line 554, in build_recipes
run_pymodules_install(
File "/content/.buildozer/android/platform/python-for-android/pythonforandroid/build.py", line 877, in run_pymodules_install
shprint(sh.bash, '-c', (
File "/content/.buildozer/android/platform/python-for-android/pythonforandroid/logger.py", line 174, in shprint
for line in output:
^^^^^^
File "/root/.local/lib/python3.12/site-packages/sh/init.py", line 876, in next
self.wait()
File "/root/.local/lib/python3.12/site-packages/sh/init.py", line 793, in wait
self.handle_command_exit_code(exit_code)
File "/root/.local/lib/python3.12/site-packages/sh/init.py", line 820, in handle_command_exit_code
raise exc
sh.ErrorReturnCode_1:

RAN: /usr/bin/bash -c 'source venv/bin/activate && pip install -U pip'

STDOUT:
Traceback (most recent call last):
File "/content/.buildozer/android/platform/build-arm64-v8a_armeabi-v7a/build/venv/bin/pip", line 3, in
from pip._internal.cli.main import main
File "/content/.buildozer/android/platform/build-arm64-v8a_armeabi-v7a/build/venv/lib/python3.14/site-packages/pip/_internal/cli/main.py", line 11, in
from pip._internal.cli.autocompletion import autocomplete
File "/content/.buildozer/android/platform/build-arm64-v8a_armeabi-v7a/build/venv/lib/python3.14/site-packages/pip/_internal/cli/autocompletion.py", line 12, in
from pip._internal.cli.main_parser import create_main_parser
File "/content/.buildozer/android/platform/build-arm64-v8a_armeabi-v7a/build/venv/lib/python3.14/site-packages/pip/_internal/cli/main_parser.py", line 9, in
from pip._internal.build_env import get_runnable_pip
File "/content/.buildozer/android/platform/build-arm64-v8a_armeabi-v7a/build/venv/lib/python3.14/site-packages/pip/_internal/build_env/init.py", line 8, in
from pip._internal.build_env.installer import (
...<2 lines>...
)
File "/content/.buildozer/android/platform/build-arm64-v8a_armeabi-v7a/build/venv/lib/python3.14/site-packages/pip/_internal/build_env/installer.py", line 14, in
from pip._internal.exceptions import (
...<4 lines>...
)
ImportError: cannot import name 'BuildDependencyInstallError' from 'pip._internal.exceptions' (/content/.buildozer/android/platform/build-arm64-v8a_armeabi-v7a/build/venv/lib/python3.14/site-packages/pip/_internal/exceptions.py)

How could I fix it? Setting up the specific versions (I tried 3.10.12, 3.11.6, 3.12.10, 3.14.1) of hostpython3, downgrading the pip versions to <25.0.1in venv with cleaning the cache didn't help - the traceback remains the same..

Thank you for your attention and I would be grateful for any help!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions