Re: OpenSSL 3.0.0 beta1 link issues on Solaris 10

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



None of the core developers have access to Solaris machines, thus we rely on the community for reports and fixes for this kind of thing. We're happy to assist and can sometimes identify and fix the problem but we still require help testing.

This would best be raised as an issue on GitHub [https://github.com/openssl/openssl/issues/new?assignees=&labels=issue%3A+bug+report&template=bug_report.md]. This way it is tracked and resource time can be allocated to it -- although in this case I suspect it will be the community that cracks it for us.

Since you seem to have figured out a work around, including details of what you needed to do would be very useful.  Putting them up as a pull request would be even better.


Paul Dale


On 26/7/21 7:14 am, Dennis Clarke via openssl-users wrote:
I am not sure what testing is happening with old Solaris 10 but I can
tell you there are still servers out there running. I had no issues with
the configuration stage but, as usual, I do need to make a few tweaks to
Configurations/10-main.conf. Merely to get a consistent set of CFLAGS
that I use for libraries that I may want to single step through. In any
case the link stage fails with a truely massive list of undefined
symbols and it seems as if the previous 1.1.1k libs are being found by
the build process. So I wrote a manual link script and specified the
build directory for the RUNPATH and the library search path however that
resulted in a pile of undefined symbols.

So then I went and deleted my previous 1.1.1k libs and the openssl
binary and tried the manual link once again with success.

Not sure if anyone else runs into this but I would hope that the
previous libs would not be located *before* the new current 3.0.0 libs
that are in the build directory.  Regardless I may need to simply start
over as the new libssl.so.3 seems to have a "NEEDED" libcrypto.so.1.1
and that can't be right.

Here is the result of perl configdata.pm --dump :

alpha$ /opt/bw/bin/perl configdata.pm --dump

Command line (with current working directory = .):

     /opt/bw/bin/perl ./Configure solaris64-sparcv9-cc no-asm
--prefix=/opt/bw shared no-hw no-engine -DPEDANTIC

Perl information:

     /opt/bw/bin/perl
     5.32.0 for sun4-solaris-64-ld

Enabled features:

     aria
     async
     autoalginit
     autoerrinit
     autoload-config
     bf
     blake2
     bulk
     cached-fetch
     camellia
     cast
     chacha
     cmac
     cmp
     cms
     comp
     ct
     deprecated
     des
     dgram
     dh
     dsa
     dso
     dtls
     ec
     ec2m
     ecdh
     ecdsa
     err
     filenames
     gost
     idea
     legacy
     md4
     mdc2
     module
     multiblock
     nextprotoneg
     ocb
     ocsp
     pic
     pinshared
     poly1305
     posix-io
     psk
     rc2
     rc4
     rdrand
     rfc3779
     rmd160
     scrypt
     secure-memory
     seed
     shared
     siphash
     siv
     sm2
     sm3
     sm4
     sock
     srp
     srtp
     sse2
     ssl
     ssl-trace
     static-engine
     stdio
     tests
     threads
     tls
     ts
     ui-console
     whirlpool
     tls1
     tls1-method
     tls1_1
     tls1_1-method
     tls1_2
     tls1_2-method
     tls1_3
     dtls1
     dtls1-method
     dtls1_2
     dtls1_2-method

Disabled features:

     acvp-tests          [default]        OPENSSL_NO_ACVP_TESTS
     afalgeng            [cascade]        OPENSSL_NO_AFALGENG
     asan                [default]        OPENSSL_NO_ASAN
     asm                 [option]         OPENSSL_NO_ASM
     buildtest-c++       [default]
     capieng             [cascade]        OPENSSL_NO_CAPIENG
     crypto-mdebug       [default]        OPENSSL_NO_CRYPTO_MDEBUG
     devcryptoeng        [default]        OPENSSL_NO_DEVCRYPTOENG
     dynamic-engine      [cascade]
     ec_nistp_64_gcc_128 [default]        OPENSSL_NO_EC_NISTP_64_GCC_128
     egd                 [default]        OPENSSL_NO_EGD
     engine              [option]         OPENSSL_NO_ENGINE (skip
engines, crypto/engine)
     external-tests      [default]        OPENSSL_NO_EXTERNAL_TESTS
     fips                [default]
     fips-securitychecks [cascade]        OPENSSL_NO_FIPS_SECURITYCHECKS
     fuzz-afl            [default]        OPENSSL_NO_FUZZ_AFL
     fuzz-libfuzzer      [default]        OPENSSL_NO_FUZZ_LIBFUZZER
     ktls                [default]        OPENSSL_NO_KTLS
     loadereng           [cascade]        OPENSSL_NO_LOADERENG
     makedepend          [unavailable]
     md2                 [default]        OPENSSL_NO_MD2 (skip crypto/md2)
     msan                [default]        OPENSSL_NO_MSAN
     padlockeng          [cascade]        OPENSSL_NO_PADLOCKENG
     rc5                 [default]        OPENSSL_NO_RC5 (skip crypto/rc5)
     sctp                [default]        OPENSSL_NO_SCTP
     trace               [default]        OPENSSL_NO_TRACE
     ubsan               [default]        OPENSSL_NO_UBSAN
     unit-test           [default]        OPENSSL_NO_UNIT_TEST
     uplink              [no uplink_arch] OPENSSL_NO_UPLINK
     weak-ssl-ciphers    [default]        OPENSSL_NO_WEAK_SSL_CIPHERS
     zlib                [default]
     zlib-dynamic        [default]
     ssl3                [default]        OPENSSL_NO_SSL3
     ssl3-method         [default]        OPENSSL_NO_SSL3_METHOD

Config target attributes:

     AR => "ar",
     ARFLAGS => "qc",
     CC => "cc",
     CFLAGS => "-xO0 -g -xdepend",
     HASHBANGPERL => "/usr/bin/env perl",
     RANLIB => "ranlib",
     RC => "windres",
     asm_arch => "sparcv9",
     bn_ops => "BN_LLONG RC4_CHAR",
     build_file => "Makefile",
     build_scheme => [ "unified", "unix" ],
     cflags => "-m64 -xarch=sparc -g -xO0 -Xa -errfmt=error -erroff=%none
-errshort=full -xstrconst -xildoff -xmemalign=8s -xnolibmil -xcode=pic32
-xregs=no%appl -xlibmieee -mc -ftrap=%none -xbuiltin=%none -xunroll=1
-Qy -xdebugformat=dwarf -xstrconst -Xa",
     cppflags => "-D_REENTRANT -D_REENTRANT",
     defines => [ "OPENSSL_BUILDING_OPENSSL" ],
     disable => [  ],
     dso_scheme => "dlfcn",
     enable => [  ],
     ex_libs => "-lsocket -lnsl -ldl -lrt -lpthread",
     includes => [  ],
     lflags => "-mt",
     lib_cflags => "",
     lib_cppflags => "-DFILIO_H -DB_ENDIAN -DBN_DIV2W",
     lib_defines => [  ],
     module_cflags => "-KPIC",
     module_cxxflags => undef,
     module_ldflags => "-G -dy -z text -Wl,-Bsymbolic",
     multilib => "/64",
     perl_platform => "Unix",
     perlasm_scheme => "void",
     shared_cflag => "-KPIC",
     shared_defflag => "-Wl,-M,",
     shared_defines => [  ],
     shared_ldflag => "-G -dy -z text -Wl,-Bsymbolic",
     shared_rcflag => "",
     shared_sonameflag => "-Wl,-h,",
     shared_target => "solaris",
     thread_defines => [  ],
     thread_scheme => "pthreads",
     unistd => "<unistd.h>",

Recorded environment:

     AR =
     BUILDFILE =
     CC = /opt/developerstudio12.6/bin/cc
     CFLAGS = -m64 -xarch=sparc -g -xO0 -Xa -errfmt=error -erroff=%none
-errshort=full -xstrconst -xildoff -xmemalign=8s -xnolibmil -xcode=pic32
-xregs=no%appl -xlibmieee -mc -ftrap=%none -xbuiltin=%none -xunroll=1
-Qy -xdebugformat=dwarf
     CPPFLAGS = -I/opt/bw/include -D_POSIX_PTHREAD_SEMANTICS
-D_LARGEFILE64_SOURCE -D_TS_ERRNO
     CROSS_COMPILE =
     CXX = /opt/developerstudio12.6/bin/CC
     CXXFLAGS =
     HASHBANGPERL =
     LDFLAGS = -L/opt/bw/lib
     LDLIBS =
     OPENSSL_LOCAL_CONFIG_DIR =
     PERL = /opt/bw/bin/perl
     RANLIB =
     RC =
     RCFLAGS =
     WINDRES =
     __CNF_CFLAGS =
     __CNF_CPPDEFINES =
     __CNF_CPPFLAGS =
     __CNF_CPPINCLUDES =
     __CNF_CXXFLAGS =
     __CNF_LDFLAGS =
     __CNF_LDLIBS =

Makevars:

     AR              = ar
     ARFLAGS         = qc
     CC              = /opt/developerstudio12.6/bin/cc
     CFLAGS          = -m64 -xarch=sparc -g -xO0 -Xa -errfmt=error
-erroff=%none -errshort=full -xstrconst -xildoff -xmemalign=8s
-xnolibmil -xcode=pic32 -xregs=no%appl -xlibmieee -mc -ftrap=%none
-xbuiltin=%none -xunroll=1 -Qy -xdebugformat=dwarf
     CPPDEFINES      = PEDANTIC
     CPPFLAGS        = -I/opt/bw/include -D_POSIX_PTHREAD_SEMANTICS
-D_LARGEFILE64_SOURCE -D_TS_ERRNO
     CPPINCLUDES     =
     CXX             = /opt/developerstudio12.6/bin/CC
     CXXFLAGS        =
     HASHBANGPERL    = /opt/bw/bin/perl
     LDFLAGS         = -L/opt/bw/lib
     LDLIBS          =
     PERL            = /opt/bw/bin/perl
     RANLIB          = ranlib
     RC              = windres
     RCFLAGS         =

NOTE: These variables only represent the configuration view.  The build file
template may have processed these variables further, please have a look
at the
build file for more exact data:
     Makefile

build file:

     Makefile

build file templates:

     Configurations/common0.tmpl
     Configurations/unix-Makefile.tmpl
alpha$


I will start over now with the previous 1.1.1k bin and libs entirely
removed. If there is some option within the Configuration step that I am
missing I would be glad to hear it. Thank you.





[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux