[openssl-users] OpenSSL Version Definitions Issue on ARM

Andrei Danaila adanaila at ctrlinux.com
Wed Feb 21 01:19:25 UTC 2018


Hi,

I am attempting to crosscompile openssl for ARM and am having some issues when linking an external application to the crosscompiled OpenSSL version.

I am compiling OpenSSL like so:
./Configure linux-generic32 shared \
     --prefix=/openssl_libs \
     --openssldir=/openssl_libs \
     --cross-compile-prefix=/usr/local/gcc-linaro-6.3.1-2017.02-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf-
make depend
make -j8
make install

What I am finding however is that there is no version definitions in the generated .so. This causes any other application that I link against the generated .so, to expect the exact same version as the .so, in this case lib.so.1.0.0.

objdump --private-headers libssl.so.1.0.0

[...snip...]

Version References:
  required from libc.so.6:
    0x0d696914 0x00 02 GLIBC_2.4

Whereas, if I look on the OpenSSL library which ships on my ubuntu box, I see:
Version definitions:
1 0x01 0x09bbb660 libssl.so.1.0.0
2 0x00 0x066a2b20 OPENSSL_1.0.0
3 0x00 0x066a2b21 OPENSSL_1.0.1
        OPENSSL_1.0.0 
4 0x00 0x06a2b214 OPENSSL_1.0.1d
        OPENSSL_1.0.1 
5 0x00 0x066a2b22 OPENSSL_1.0.2
        OPENSSL_1.0.1d 
6 0x00 0x06a2b2e7 OPENSSL_1.0.2g
        OPENSSL_1.0.2 
Version References:
  required from libc.so.6:
    0x06969194 0x00 14 GLIBC_2.14
    0x0d696914 0x00 13 GLIBC_2.4
    0x09691974 0x00 11 GLIBC_2.3.4
    0x09691a75 0x00 09 GLIBC_2.2.5
  required from libcrypto.so.1.0.0:
    0x06a2b214 0x00 12 OPENSSL_1.0.1d
    0x066a2b21 0x00 10 OPENSSL_1.0.1
    0x066a2b22 0x00 08 OPENSSL_1.0.2
    0x066a2b20 0x00 07 OPENSSL_1.0.0


Any insight would be greatly appreciated.


More information about the openssl-users mailing list