-
Notifications
You must be signed in to change notification settings - Fork 506
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 failed to work with NDK 25b (minimum supported by p4a) #1543
Comments
And here is libffi config.log while android-ndk-r23b was used. It ended with success:
|
Try building on the Linux partition, building on the Windows partition is known to cause issues with some packages. See https://github.com/kivy/buildozer/blob/master/docs/source/installation.rst#android-on-windows-10-or-11 |
No it's not the case. I'm building Kivy on Win10 with Ubuntu via WSL v1 for years without any issues. I saw users who complained about WSL and the way how Windows filesystem is mounted under Ubuntu, but to be honest, they probably didn't set correct access rights to folder where projects are stored, that's why they had issues with permission denied while Linux is trying to store something on Windows drive. My older projects, where previous NDK was downloaded and compiled are still building fine. |
All I can suggest is that you try using the Linux partition. If you don't want to do that, I have no suggestion. |
I tried to build new project using different laptop with Win10 and Ubuntu 20.04 via WSL v1, and it end up with same issue. |
Still best to avoid the Windows disk, its a problem waiting to happen. On WSL2 I just built: Ubuntu 20 Python 3.8.10, and Ubuntu 22 Python3.10.6, both with ndk25b, Buildozer 1.4.0 and 1.4.1.dev0, both ARM architectures and saw no issue. Since p4a includes The only differences I can see:
|
Ok, let's focus on root case. Here is what fails in my case:
So something is wrong with
But as I wrote I had no issues with NDK 23b, so let's try older clang on same machine:
Well, it works fine.
So NDK23b comes with Let's compare it:
Then I found an issue related to Someone reported same issue with WSL v1, and he also wrote that he had no such issue with NDK23b. I will search for solution/solutions. |
Well, this or this workaround works for my Ubuntu running on Windows using WSL v1:
Patched
So it wasn't an issue related to Windows filesytem accessed by Ubuntu, it wasn't related to venv, wasn't related to Linux distribution, but it was related to WSL v1 and clang (clang-14) shipped with NDK 25b. |
Thanks for the feedback. I added this one to the of cryptic error messages https://github.com/Android-for-Python/Android-for-Python-Users#appendix-h--cryptic-error-messages Somebody will be grateful for your work. Close? |
Thank you for triaging the issue @RobertFlatt and @Marcinosoft ! Yep. Definitely not a |
@RobertFlatt thank you for motivation me to dig deeper, reporting that in your case build succeed with NDK 25b. I'll stay with WSL v1. It worked absolutely fine and I'm glad it still will. |
I'm using WSL 2, x64, still have this issue, not just with NDK 25c, but with newer NDK versions as well, same library (libffi) failing to compile. Have asked about it in the discord server, but the channel seems quite dead. Edit: Got a response. TLDR: use buildozer instead. https://buildozer.readthedocs.io/en/latest/installation.html#targeting-android |
Hi. Did you try to patch clang? |
This can also occur if |
Currently recommended android's NDK version by p4a is: 25b.
If you try to specify older one within buildozer.spec:
then following error appear:
Leaving android.ndk param unspecified Buildozer is downloading android-ndk-r25b, then fails on building libffi for armeabi-v7a:
and here is mentioned config.log content (C:\Kivy\Projects\Sample.buildozer\android\platform\build-armeabi-v7a\build\other_builds\libffi\armeabi-v7a__ndk_target_21\libffi\config.log):
It worked fine with previously recommended NDK version 23b.
The text was updated successfully, but these errors were encountered: