buildozer 打包遇到 [email protected] 报错
已知 buildozer 在 2023 年之后就没有更新了,所以不支持新的 openssl 3.x
但是现在的 mac 系统等都是 openssl 3.x 了,这就会导致 buildozer -v android debug
打包的时候报错
Error: [email protected] has been disabled because it is not supported upstream! It was disabled on 2024-10-24.
Traceback (most recent call last):
File "/opt/homebrew/Cellar/[email protected]/3.10.16/Frameworks/Python.framework/Versions/3.10/lib/python3.10/runpy.py", line 196, in _run_module_as_main
return _run_code(code, main_globals, None,
File "/opt/homebrew/Cellar/[email protected]/3.10.16/Frameworks/Python.framework/Versions/3.10/lib/python3.10/runpy.py", line 86, in _run_code
exec(code, run_globals)
File "/Users/ponponon/Desktop/code/me/app_crawler/.buildozer/android/platform/python-for-android/pythonforandroid/toolchain.py", line 25, in
check()
File "/Users/ponponon/Desktop/code/me/app_crawler/.buildozer/android/platform/python-for-android/pythonforandroid/checkdependencies.py", line 69, in check
check_and_install_default_prerequisites()
File "/Users/ponponon/Desktop/code/me/app_crawler/.buildozer/android/platform/python-for-android/pythonforandroid/prerequisites.py", line 404, in check_and_install_default_prerequisites
prerequisite.install()
File "/Users/ponponon/Desktop/code/me/app_crawler/.buildozer/android/platform/python-for-android/pythonforandroid/prerequisites.py", line 60, in install
self.darwin_installer()
File "/Users/ponponon/Desktop/code/me/app_crawler/.buildozer/android/platform/python-for-android/pythonforandroid/prerequisites.py", line 285, in darwin_installer
subprocess.check_output(["brew", "install", self.homebrew_formula_name])
File "/opt/homebrew/Cellar/[email protected]/3.10.16/Frameworks/Python.framework/Versions/3.10/lib/python3.10/subprocess.py", line 421, in check_output
return run(*popenargs, stdout=PIPE, timeout=timeout, check=True,
File "/opt/homebrew/Cellar/[email protected]/3.10.16/Frameworks/Python.framework/Versions/3.10/lib/python3.10/subprocess.py", line 526, in run
raise CalledProcessError(retcode, process.args,
subprocess.CalledProcessError: Command '['brew', 'install', '[email protected]']' returned non-zero exit status 1
从输入日志看,其实是 python-for-android
依赖 openssl1.1
那这个问题变成了:
- 怎么让 buildozer 支持 openssl 3.x
- 怎么在系统中安装一个 openssl 1.1 与 openssl 3.x 共存,且让 buildozer 使用 openssl 1.1
二选一来解决
如何让一个依赖 openssl1.1 的软件在新的操作系统中可以跑起来?