crypto and ssl modules under OSX

Bjorn Gustavsson bjorn@REDACTED
Tue Dec 7 10:07:46 CET 2004


If you link using gcc, -lbundle1.o must NOT be present
because ggc automatically links bundle1.o and it gets
linked TWICE (and causes a duplicate symbol error).

If you link using ld, -lbundle1.o MUST be present.

The crypto Makefile was wrong. It explicitly linked
using gcc, but it still included the other DED variables,
so the -lbundle1.o flag was included too. Clearly wrong.

Now the crypto Makefile links using @DED_LD@ (which is
currently set to 'ld') and it works.


The next step, to change DED_LD to gcc for Mac OS X and remove
the -lbundle1.o flag is easy and should work, PROVIDED that all
Makefiles in all applications that link dynamic drivers are
correct (in particular, they should not use any explicit options
that only work in either the compiler or linker). I am not sure
they are correct. Yet.

/Bjorn

Sean Hinde <sean.hinde@REDACTED> writes:

> On 3 Dec 2004, at 14:06, Bjorn Gustavsson wrote:
> >
> > In R10B-2 crypto will build on Mac OS X, although it may still use the
> > old ugly, undocument bundle1.o trick. At the very latest, I hope to
> > eliminate
> > that trick before Tiger is out.
> 
> Interresting..
> 
> The way I got crypto to compile and run with R10B-1a was simply to
> remove the offending -lbundle1.o from the generated
> Makefile. Everything else was correct.
> 
> This strongly suggests that the only remaining problem is the presence
> of the very thing you are trying to remove.
> 
> The solution would appear to be quite straightforward from this point.
> 
> Sean
> 

-- 
Björn Gustavsson, Erlang/OTP, Ericsson AB



More information about the erlang-questions mailing list