After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 795454 - android: x86_64 target abi build failure
android: x86_64 target abi build failure
Status: RESOLVED OBSOLETE
Product: GStreamer
Classification: Platform
Component: cerbero
1.14.0
Other Mac OS
: Normal blocker
: 1.14.1
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2018-04-22 10:22 UTC by Philippe Normand
Modified: 2018-11-03 10:22 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
x86_64 build errors (49.03 KB, text/plain)
2018-04-22 10:30 UTC, Philippe Normand
Details

Description Philippe Normand 2018-04-22 10:22:20 UTC
With the GStreamer 1.14.0 binaries and sdkmanager deps:

  Path                        | Version      | Description                    | Location                    
  -------                     | -------      | -------                        | -------                     
  build-tools;23.0.3          | 23.0.3       | Android SDK Build-Tools 23.0.3 | build-tools/23.0.3/         
  build-tools;26.0.2          | 26.0.2       | Android SDK Build-Tools 26.0.2 | build-tools/26.0.2/         
  build-tools;27.0.3          | 27.0.3       | Android SDK Build-Tools 27.0.3 | build-tools/27.0.3/         
  extras;android;m2repository | 47.0.0       | Android Support Repository     | extras/android/m2repository/
  ndk-bundle                  | 16.1.4479499 | NDK                            | ndk-bundle/                 
  patcher;v4                  | 1            | SDK Patch Applier v4           | patcher/v4/                 
  platform-tools              | 27.0.1       | Android SDK Platform-Tools     | platform-tools/             
  platforms;android-23        | 3            | Android SDK Platform 23        | platforms/android-23/       
  platforms;android-26        | 2            | Android SDK Platform 26        | platforms/android-26/       
  tools                       | 26.1.1       | Android SDK Tools              | tools/                      



Build gstplayer x86
[x86] Compile        : gstplayer <= player.c
GStreamer      : [GEN] => gst-build-x86/gstreamer_android.c
GStreamer      : [COMPILE] => gst-build-x86/gstreamer_android.c
GStreamer      : [LINK] => gst-build-x86/libgstreamer_android.so
/Users/philn/dev/libgstreamer_android_gen/gst-android-1.14//x86/lib/libcrypto.a(aesni-x86.o): In function `aesni_encrypt':
/home/jan/devel/gstreamer/cerbero/build/sources/android_universal/x86/openssl-1.1.0g/crypto/aes/aesni-x86.s:8: multiple definition of `aesni_encrypt'
/Users/philn/dev/libgstreamer_android_gen/gst-android-1.14//x86/lib/libgnutls.a(aesni-x86.o):/home/jan/devel/gstreamer/cerbero/build/sources/android_universal/x86/gnutls-3.5.18/lib/accelerated/x86/elf/aesni-x86.s:47: first defined here
/Users/philn/dev/libgstreamer_android_gen/gst-android-1.14//x86/lib/libcrypto.a(aesni-x86.o): In function `aesni_decrypt':
/home/jan/devel/gstreamer/cerbero/build/sources/android_universal/x86/openssl-1.1.0g/crypto/aes/aesni-x86.s:35: multiple definition of `aesni_decrypt'
/Users/philn/dev/libgstreamer_android_gen/gst-android-1.14//x86/lib/libgnutls.a(aesni-x86.o):/home/jan/devel/gstreamer/cerbero/build/sources/android_universal/x86/gnutls-3.5.18/lib/accelerated/x86/elf/aesni-x86.s:71: first defined here
/Users/philn/dev/libgstreamer_android_gen/gst-android-1.14//x86/lib/libcrypto.a(aesni-x86.o): In function `aesni_ecb_encrypt':
/home/jan/devel/gstreamer/cerbero/build/sources/android_universal/x86/openssl-1.1.0g/crypto/aes/aesni-x86.s:364: multiple definition of `aesni_ecb_encrypt'
/Users/philn/dev/libgstreamer_android_gen/gst-android-1.14//x86/lib/libgnutls.a(aesni-x86.o):/home/jan/devel/gstreamer/cerbero/build/sources/android_universal/x86/gnutls-3.5.18/lib/accelerated/x86/elf/aesni-x86.s:343: first defined here
/Users/philn/dev/libgstreamer_android_gen/gst-android-1.14//x86/lib/libcrypto.a(aesni-x86.o): In function `aesni_ccm64_encrypt_blocks':
/home/jan/devel/gstreamer/cerbero/build/sources/android_universal/x86/openssl-1.1.0g/crypto/aes/aesni-x86.s:599: multiple definition of `aesni_ccm64_encrypt_blocks'
/Users/philn/dev/libgstreamer_android_gen/gst-android-1.14//x86/lib/libgnutls.a(aesni-x86.o):/home/jan/devel/gstreamer/cerbero/build/sources/android_universal/x86/gnutls-3.5.18/lib/accelerated/x86/elf/aesni-x86.s:572: first defined here
/Users/philn/dev/libgstreamer_android_gen/gst-android-1.14//x86/lib/libcrypto.a(aesni-x86.o): In function `aesni_ccm64_decrypt_blocks':
/home/jan/devel/gstreamer/cerbero/build/sources/android_universal/x86/openssl-1.1.0g/crypto/aes/aesni-x86.s:687: multiple definition of `aesni_ccm64_decrypt_blocks'
/Users/philn/dev/libgstreamer_android_gen/gst-android-1.14//x86/lib/libgnutls.a(aesni-x86.o):/home/jan/devel/gstreamer/cerbero/build/sources/android_universal/x86/gnutls-3.5.18/lib/accelerated/x86/elf/aesni-x86.s:652: first defined here
/Users/philn/dev/libgstreamer_android_gen/gst-android-1.14//x86/lib/libcrypto.a(aesni-x86.o): In function `aesni_ctr32_encrypt_blocks':
/home/jan/devel/gstreamer/cerbero/build/sources/android_universal/x86/openssl-1.1.0g/crypto/aes/aesni-x86.s:810: multiple definition of `aesni_ctr32_encrypt_blocks'
/Users/philn/dev/libgstreamer_android_gen/gst-android-1.14//x86/lib/libgnutls.a(aesni-x86.o):/home/jan/devel/gstreamer/cerbero/build/sources/android_universal/x86/gnutls-3.5.18/lib/accelerated/x86/elf/aesni-x86.s:764: first defined here
/Users/philn/dev/libgstreamer_android_gen/gst-android-1.14//x86/lib/libcrypto.a(aesni-x86.o): In function `aesni_xts_encrypt':
/home/jan/devel/gstreamer/cerbero/build/sources/android_universal/x86/openssl-1.1.0g/crypto/aes/aesni-x86.s:1048: multiple definition of `aesni_xts_encrypt'
/Users/philn/dev/libgstreamer_android_gen/gst-android-1.14//x86/lib/libgnutls.a(aesni-x86.o):/home/jan/devel/gstreamer/cerbero/build/sources/android_universal/x86/gnutls-3.5.18/lib/accelerated/x86/elf/aesni-x86.s:995: first defined here
/Users/philn/dev/libgstreamer_android_gen/gst-android-1.14//x86/lib/libcrypto.a(aesni-x86.o): In function `aesni_xts_decrypt':
/home/jan/devel/gstreamer/cerbero/build/sources/android_universal/x86/openssl-1.1.0g/crypto/aes/aesni-x86.s:1408: multiple definition of `aesni_xts_decrypt'
/Users/philn/dev/libgstreamer_android_gen/gst-android-1.14//x86/lib/libgnutls.a(aesni-x86.o):/home/jan/devel/gstreamer/cerbero/build/sources/android_universal/x86/gnutls-3.5.18/lib/accelerated/x86/elf/aesni-x86.s:1342: first defined here
/Users/philn/dev/libgstreamer_android_gen/gst-android-1.14//x86/lib/libcrypto.a(aesni-x86.o): In function `aesni_cbc_encrypt':
/home/jan/devel/gstreamer/cerbero/build/sources/android_universal/x86/openssl-1.1.0g/crypto/aes/aesni-x86.s:2588: multiple definition of `aesni_cbc_encrypt'
/Users/philn/dev/libgstreamer_android_gen/gst-android-1.14//x86/lib/libgnutls.a(aesni-x86.o):/home/jan/devel/gstreamer/cerbero/build/sources/android_universal/x86/gnutls-3.5.18/lib/accelerated/x86/elf/aesni-x86.s:1718: first defined here
/Users/philn/dev/libgstreamer_android_gen/gst-android-1.14//x86/lib/libcrypto.a(aesni-x86.o): In function `aesni_set_encrypt_key':
/home/jan/devel/gstreamer/cerbero/build/sources/android_universal/x86/openssl-1.1.0g/crypto/aes/aesni-x86.s:3182: multiple definition of `aesni_set_encrypt_key'
/Users/philn/dev/libgstreamer_android_gen/gst-android-1.14//x86/lib/libgnutls.a(aesni-x86.o):/home/jan/devel/gstreamer/cerbero/build/sources/android_universal/x86/gnutls-3.5.18/lib/accelerated/x86/elf/aesni-x86.s:2135: first defined here
/Users/philn/dev/libgstreamer_android_gen/gst-android-1.14//x86/lib/libcrypto.a(aesni-x86.o): In function `aesni_set_decrypt_key':
/home/jan/devel/gstreamer/cerbero/build/sources/android_universal/x86/openssl-1.1.0g/crypto/aes/aesni-x86.s:3193: multiple definition of `aesni_set_decrypt_key'
/Users/philn/dev/libgstreamer_android_gen/gst-android-1.14//x86/lib/libgnutls.a(aesni-x86.o):/home/jan/devel/gstreamer/cerbero/build/sources/android_universal/x86/gnutls-3.5.18/lib/accelerated/x86/elf/aesni-x86.s:2146: first defined here
/Users/philn/dev/android/ndk-bundle/toolchains/x86-4.9/prebuilt/darwin-x86_64/lib/gcc/i686-linux-android/4.9.x/../../../../i686-linux-android/bin/ld.bfd: /Users/philn/dev/libgstreamer_android_gen/gst-android-1.14//x86/lib/libvpx.a(postproc.c.o): relocation R_386_GOTOFF against protected data `vp8_rv' can not be used when making a shared object
/Users/philn/dev/android/ndk-bundle/toolchains/x86-4.9/prebuilt/darwin-x86_64/lib/gcc/i686-linux-android/4.9.x/../../../../i686-linux-android/bin/ld.bfd: final link failed: Bad value
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Comment 1 Philippe Normand 2018-04-22 10:30:28 UTC
Created attachment 371222 [details]
x86_64 build errors

x6_64 build also fails.
Comment 2 Sebastian Dröge (slomo) 2018-04-23 07:08:21 UTC
Thanks for taking the time to report this.
This particular bug has already been reported into our bug tracking system, but we are happy to tell you that the problem has already been fixed in the code repository.

*** This bug has been marked as a duplicate of bug 794599 ***
Comment 3 Philippe Normand 2018-04-24 10:08:16 UTC
Comment on attachment 371222 [details]
x86_64 build errors

This still happens with gst git master.
Comment 4 Nirbheek Chauhan 2018-10-02 08:15:34 UTC
I think the fix is to link with -Wl,--exclude-libs=comma-separated-list-of-libs which will not try to export symbols from the specified static libraries. libx264.a and ffmpeg's static libraries should not export any symbols in libgstreamer_android.so
Comment 5 GStreamer system administrator 2018-11-03 10:22:52 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/gstreamer/cerbero/issues/52.