-
-
Notifications
You must be signed in to change notification settings - Fork 2.6k
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
Linking error on master for Android devices running < 5.0 (Lollipop) #4171
Comments
having the same issues would be interested in a solution |
ping @openframeworks/android |
copying from the forum: we need to recompile the libraries using NDK_PLATFORM android-19 and hope that will work in both android 4 and 5. if someone wants to give it a try, you can configure apothecary to use android-19 by editing export NDK_PLATFORM=android-19 then run apothecary from scripts/apothecary like: ./apothecary -t android update openssl and then: ./apothecary -t android update poco which are the libraries that seem to have problems, you would need to do the same for any library with undefined symbols. if anyone gets it to work with android 4 and can send a pull request i can test it on android 5. @tallavi is giving this a try. btw, @bilderbuchi can you add @tallavi to @openframeworks/android ? |
I updated the result of my attempt in the forum: http://forum.openframeworks.cc/t/android-master-branch/20106/9 Attached also here below. I suspect permissions issues on ostype.sh (also found an old closed issue about it), but couldn't make it work. I have no leads on the other issues yet. Help? Tals-Air:apothecary tallavi$ ./apothecary -t android update poco ----- poco ----- Downloading "poco" SHA== https://github.com/pocoproject/poco Preparing "poco" /Users/tallavi/Development/Trailze/ThirdParty/openFrameworks-latest-merged/scripts/apothecary/apothecary: line 68: ./ostype.sh: No such file or directory ^ Received error ^ ^ Received error ^ ----- openssl ----- Downloading "openssl" % Total % Received % Xferd Average Speed Time Time Time Current |
BTW, the error described above is not the same that I am getting. I have a run time error on Android <5 devices. It actually doesn't make sense to have linking error on <5 devices :-) |
don't you have ostype.sh in the apothecary folder with execution permissions? |
I do (as I pulled latest master): -rwxrwxrwx 1 tallavi staff 767 Feb 3 18:40 ostype.sh Check out this close issue: openframeworks/apothecary#21 I bet it's something like that, but I'm not sure what else to try other than chmod +x or 777. I tried sudo also. Didn't help. |
Any ideas regarding the other errors (sha of openssl, XS: unbound variable)? |
I have X permissions on all the files in that directory and have the same Invalid shasum for openssl-1.0.2c. further inspection shows scripts/apothecary/formulas/openssl/openssl.sh is trying to pull https://www.openssl.org/source/$FILENAME.tar.gz with the filename openssl-1.0.2c.tar.gz and https://www.openssl.org/source/openssl-1.0.2c.tar.gz is 404'ing with the correct URL being pull request to fix the script is here However I'm getting the same error as @tallavi ./ostype.sh: No such file or directory I commented out line 68 and 82 of apothecary because I'm on OSX and it's running fine, not a long term solution but at least poco can install line 328 ANDROID_HOST="Darwin" also threw an error and needed to be changed to darwin-x86_64 |
same situation first
|
I tried building this against ndk-r10c , 10d, and 10e and getting nothing |
@sterlingcrispin, according to @arturoc, the problem is that poco and openssl needs to be rebuilt. But it fails. Can you try to follow his instructions too? |
Yes I successfully rebuilt them, and boost, and tried many versions of the
|
@arturoc same errors about POCO and OPENSSL as @mhashmi first mentioned using NDK r10e --- the file in docs/android.md recommends I use r9d so I tried that but its looking for files that don't come with r9d |
can you try again? there where flags in other places that were making apothecary still compile those libraries with android-21. it's linking for me fine now with android-19 but don't have an android 4 device to test. i've recreated the branch so there's no more libraries than necessary in the git history so you'll probably need to remove your local branch before pulling it again or pull it into a different one. |
Hey @arturoc I downloaded that repo as a zip, set it up for ndk r10e, and got it building to a Nexus 7 tablet on 4.4.2 - thanks! when I first tried to sync gradle and do a build it had a missing file at toolchains/arm-linux-androideabi-4.9/prebuilt/darwin-x86/bin/arm-linux-androideabi-g++ I have a bunch of versions of the NDK and none have that g++ file in that directory, they're all in darwin-x86_64 , I just copied that folder and removed the _64, rebuilt and it works fine now. |
Sorry for disappearing. I had a mega-crisis over at my own project. I now tested and verified on both Android5 and Android4! |
Thanks a lot @arturoc -- working perfectly here as well. |
@bilderbuchi to solve this i've change the android toolchain to 19 and now travis is failing. can you take a look? |
yeah I'll take a look |
btw, did the PR you made not fail/show that failure? |
@arturoc which version of the NDK is the appropriate one for toolchain 19? |
I switched to 10e when compiling/testing. 10b didn't compile. |
hm, we're on 10e right now (but a slimmed-down one because of travis memory problems). my suspicion is that toolchain 19 needs some file that it was ok to rip out in 21 (although I think we're not that aggressive) |
btw opened #4214 for any further discussion |
For devices running anything under Lollipop (5.0), we get linking errors when launching any of the android example apps.
We tried NDK r10e, r10b, r9b and r9d to confirm against the androidEmptyExample.
Please find below the linker error:
Please also see this forum thread for additional details.
Thank you.
The text was updated successfully, but these errors were encountered: