[openssl-users] Symbol(s) not found _TLSv1_2_method _BIO_test_flags

Dan S danchik at rebelbase.com
Mon Jun 13 20:14:08 UTC 2016

I did this step at a time to see what happens and here are the results:

With no paths modified, just bare code produces compile error
('TLSv1_2_method' was not declared at this scope) as expected because
openssl that comes osx 10.6 is older without such method - ok so far

Adding header paths to the 1.0.2h now compiles but then produces linking
Symbols(s) not found: _TLS1_2_method referenced from _main in main.o  and
_SSL_CTX_new referenced  - also means wrong path since it doesn't even see
the SSL_CTX_new, ok so far

adding new lib paths: and the libs to include m annually via -Lpath and
-llib flags :

/Developer/usr/bin/g++-4.2 -arch x86_64 -isysroot

-o /Volumes/MacintoshHD/w/testss3/build/Debug/testss3

(ps, the -filelist ...../testss3.LinkFileList contains single path to the

So to me this looks like 1.0.2h did not compile with TLSv1_2_method (and I
can not find the object that implements it either, only see that it is
referenced from s23_meth.o)

I am thinking there is an .o missing from linking of libssl.a but can't
find what object has the implementation of TLSv1_2_method

(I've even got rid of all the spaces in all the paths before compiling
openssl, make had issues installing across paths with spaces)

On Sun, Jun 12, 2016 at 2:24 AM, Axel Luttgens <axel.luttgens at skynet.be>

> > Le 9 juin 2016 à 02:29, Dan S a écrit :
> >
> > Hello, I've compiled openssl.1.0.2h on osx (32bit) and linked staticly
> my project with libcrypto.a and libssl/a, but I get 2 linking errors with
> "Symbol(s) not found":
> >
> > _TLSv1_2_method, referenced from ...
> > and
> > _BIO_test_flags, referenced from ...
> >
> > Why would this be happening?
> Hello Dan,
> Difficult to tell from here. ;-)
> What (and how) are you trying to compile?
> > Le 11 juin 2016 à 04:56, Dan S a écrit :
> >
> > I've also tried 1.0.2g and same problem on osx.  Little more details: on
> pc the expected symbol (_TLSv1_2_method) is in the ssleay32.lib as expected
> >
> > on mac (and this is specifically on 10.5 and 10.6 Darwin i386) it builds
> two libs:
> >
> > libcrypto.a and libssl.a (the undefined symbol is showing up in libssl.a
> but as undefined in lib itself) using `nm libssl.a`:
> >
> > […]
> >
> > it seems there is an object maybe missing from when it was linked.
> This may also mean that they are expected to be defined somewhere else.
> As a minimal test case, could you try to compile this one:
>         #include <openssl/ssl.h>
>         int main()
>         {
>                 SSL_CTX * ctx;
>                 ctx = SSL_CTX_new(TLSv1_2_method());
>         }
> so as to check the consistency of the -I, -L and -l options passed to gcc?
> Axel
> --
> openssl-users mailing list
> To unsubscribe: https://mta.openssl.org/mailman/listinfo/openssl-users
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mta.openssl.org/pipermail/openssl-users/attachments/20160613/75ea3eb7/attachment.html>

More information about the openssl-users mailing list