-
-
Notifications
You must be signed in to change notification settings - Fork 10.6k
Android x86: undefined reference to __atomic_* (Alpha11) #14083
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
Comments
Is this new with alpha11? Have you tried previous alphas? |
Alpha9 was the last version we tried - that worked. We did not try Alpha10. |
Almost certainly this is related to commit d5e742d. |
Although strangely |
OTC: Could be related to ifdef issues. We could do with some help on this platform. |
Tried alpha12 today.... same CI works again. Maybe fixed "by accident"? |
Strange!!! Ok - thanks for letting us know. |
I've bumped into the same issue. I copied build options used by @misery and was able to avoid the errors,
removing one of these options lead to the errors "undefined reference to 'atomic...."
|
@mattcaswell, it is alpha12 |
have no errors
"atomic" errors:
|
Since this affects alpha12 I'm reopening this |
@macvk Hi, do you observe the same issue on alpha 13 as well? |
Yes. Here is the configuration params (alpha 13)
Here is the build result
|
I wonder if this impacts all Android API levels. I guess 16 is quite old now. We might need to add some android specific detection here to avoid this - but it would be a shame to cripple all android versions if only some are affected. |
there is no correlation between this issue and API level.
|
Could you try configuring like this:
|
I've tried this way and it works
I should say, there is no possibility to make libraries |
Great! @levitte....how should the above be reflected in .conf file updates? |
I suppose something like this should help?
|
Guys, you can build the openssl for Android yourself https://github.com/macvk/openssl-android Just download the script and run it. Enjoy. P.S. The 'sed' is needed for removing the prefix .3 |
I confirm that master fail for android i686 hosts . In same time 1.1.1 stable builds fine. |
After compare pthread source between master and 1.1.1 I note one significant difference - 1.1.1 uses is_lock_free only with integer argument. In master is_lock_free is used in addition with 64-bit integer argument. So question is possible code to be updated to use 32-bit argument as maximum on 32 bit OS-ses. I'm not familiar with "atomic locks". Compiler could be tested at configuration time but OpenSSL build system does not use such functionality. What about 32-bit linux? |
Perhaps - #14711 . |
It seems to me nobody use 32-bit linux! In conclusion issue is only with 32-bit clang. Test above shows maximum Android NDK r21e, i.e. clang up to 9.0.9. I wonder why code uses same integer to manage initialisation flags for deprecated engine. |
Another #14766 list a number of 32-bit hosts and mention is one case extra library dependency to libatomic. |
It might not be necessary with the most recent toolchain versions but apparently many 32bit linux architectures and commonly used toolchain versions require this. It is also harmless to include even on architectures that do not need it. Fixes openssl#14083
It might not be necessary with the most recent toolchain versions but apparently many 32bit linux architectures and commonly used toolchain versions require this. It is also harmless to include even on architectures that do not need it. Fixes openssl#14083 Reviewed-by: Paul Dale <[email protected]> (Merged from openssl#15086)
Clang runs into this issue openssl/openssl#14083 Link with -libatomic on x86 Signed-off-by: Khem Raj <[email protected]>
Clang runs into this issue openssl/openssl#14083 Link with -libatomic on x86 Signed-off-by: Khem Raj <[email protected]>
Fixes openssl#14083 again after being broken by openssl#15640. CLA: trivial
Fixes #14083 again after being broken by #15640. CLA: trivial Reviewed-by: Paul Dale <[email protected]> Reviewed-by: Tomas Mraz <[email protected]> (Merged from #17833)
Fixes #14083 again after being broken by #15640. CLA: trivial Reviewed-by: Paul Dale <[email protected]> Reviewed-by: Tomas Mraz <[email protected]> (Merged from #17833) (cherry picked from commit b420e24)
Hi,
we tried alpha11 in our CI. Alpha11 cannot be build for Android x86 - armv7 and arm64 works.
Our flags
The text was updated successfully, but these errors were encountered: