-
Notifications
You must be signed in to change notification settings - Fork 1.9k
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
Numpy support w/ python3crystax #882
Comments
PS - I'm using kivy1.9.2dev and buildozer android_new as the frontend to python-for-android. |
Sorry for the delay replying, I did think about this but I'm not sure offhand what could be wrong. I'll try to check it out when I get back around to some of the python3 things. |
I am guessing that since this issue is still open, the Numpy recipe will not support python3crystax easily? |
I don't know if it will be actually hard to make it work, but yes, there
has been no further development of this issue.
…On 25/02/17 08:13, johnbolia wrote:
I am guessing that since this issue is still open, the Numpy recipe will
not support python3crystax easily?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
<#882 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/ABNQmxvCzzwK3b8hI7Kh2uhlBPpCMJcDks5rf-KsgaJpZM4J5kQN>.
|
Isn't it also an issue that the Crystax NDK currently doesn't ship a Fortran compiler for arm-linux-androideabi? Other than that it should be possible to set something like
in the numpy recipe to pass additional flags to its build_ext. |
@renemilk Fortunately numpy doesn't require any fortran compiling. This is a barrier for scipy though. |
I tried passing the extra libdir via the mentioned build_ext flag, but it still does not show up in the failing linker command. Maybe putting a |
@renemilk You're trying to make the numpy build link properly with libcrystax.so? It may also be plausible to try to remove this linking as I don't think libcrystax should be necessary. I've tried both, also without success. |
Yes, I do. |
Edit, I got it working for crystax 2.7 here https://github.com/frmdstryr/p4a-numpy . Have not tested on 3.5 but I believe it should update everything to the correct versions. |
Wow, great! I was going to say that your post was very helpful, but getting it all working is even better :p . Also, I've tried crystax python 2.7 before, but hit some issues with it (I don't remember what). Have you got that working with p4a too? |
Yes python2crystax works fine (been using it for 6+ months now). For some reason it is mentioned that Also have a python2crystax recipe with openssl for that here https://github.com/frmdstryr/p4a-crystax (based on a PR someone did a while ago) Edit: Changes to p4a might be required for it though I have my own fork |
Hi, If I get interesting results I'll communicate them here, also if you don't have time to do some tests but have ideas about what to do, share them here. |
Sharing my discoveries, or at least the ones I think as important: The problem usually starts with :
If I'm not mistaking the thread says the error has been resolved at that time by editing numpy recipe. There were no flags that's why numpy gave this error and since I have the same error with python3 I guess the libraries are not correctly set. So the only difference I have with the working project is python3, more exactly python3crystax in the ndk crystax 10.3.2.
I've compared the content between crystax ndk and google r9c ndk. I tried to edit the flags following those instructions : https://github.com/xianyi/OpenBLAS/wiki/How-to-build-OpenBLAS-for-Android
but I think I did something wrong and I don't have enough time today to continue I'll see this later. |
Other important point:
lcrystax is missing! N.B: The warnings saying lapack, blas and atlas are missing don't fail the compilation. The failure is due to crystax missing. I resolved this error by editing the flags in numpy recipe adding Now the new problem is when building the extensions:
It's trying to build a library but I get this error: Now I'm stuck, I don't know what to do because CC and CXX already have what I intended to put : Here the last error giving me a headache, I'm not used to compilation problems but isn't it strange that it uses linux x86_64 to compile for arm? Until now the commands visible in the console started with
|
Did anyone have any luck with this? |
Hi guys, I think I figured it out! Here is the fixed recipe with a minimal example application: https://github.com/plapadoo/p4a-numpy This isn't well-tested. So I will collect more feedback before creating a PR. Please let me know if the fixed recipe works for you. Thanks to all the people who already put some effort into this in the past. Especially @Abysselene and @frmdstryr |
Fantastic, I will try it out and let you know how I get on.
Thank you very much!
…On Wed, 8 Aug 2018 18:49 Kim Rinnewitz, ***@***.***> wrote:
Hi guys, I think I figured it out!
Here is the fixed recipe with a minimal example application:
https://github.com/plapadoo/p4a-numpy
This isn't well-tested. So I will collect more feedback before creating a
PR. Please let me know if the fixed recipe works for you.
Thanks to all the people who already put some effort into this in the
past. Especially @Abysselene <https://github.com/Abysselene> and
@frmdstryr <https://github.com/frmdstryr>
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
<#882 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/ACT71o16DXs1QTgcVIl1RdtuQ2hoAoJxks5uOySNgaJpZM4J5kQN>
.
|
@johnbolia @wwoods @lehanesa @Abysselene and others the pull request is ready there #1343 🎉 |
I'm trying to get my app to compile with Python 3 using the Crystax NDK. Everything is set up, and if I try to push my app to my device without specifying that numpy is needed, everything works fine. However, numpy raises a few issues:
depends = ['python2']
->depends = [('python3crystax', 'python2)]
in the__init__.py
).Everything except numpy works fine, so I think that it's just Numpy's recipe that needs a minor alteration. Oddly though, specifying a LIBRARY_PATH or LDFLAGS does not have any effect. In fact, if I add a
get_recipe_env
to theNumpyRecipe
that prints out whatsuper().get_recipe_env(arch)
contains, it has LDFLAGS with the appropriate path on there. Running the linker by hand with the given flags find the library fine (ld $(LDFLAGS) -lcrystax --verbose
). In the context of python-for-android though, the linker always fails to find libcrystax.a.Any help appreciated, thanks.
The text was updated successfully, but these errors were encountered: