Ok. I figured out what I did wrong - I didn't follow my own advice: seems
/usr/lib/libssl.dyld and /usr/lib/libcrypt.dyld got reinstalled by one of
the upgrades and I linked against the wrong lib. Re-removing them fixed
it.
So here's what works:
rm /usr/lib/libssl.dyld /usr/lib/libcrypt.dyld
./Configure shared -DUSE_TOD --openssldir=/usr/local \
--prefix=/usr/local darwin-ppc-cc
make && make tests
There is a warning about _crypt being defined in libSystem, it (seems to)
work anyway.
"Configure threads ..." seems to be a problem because Apple
doesn't provide gmtime_r(). Some hacking is required if you need it.
IMO, the #ifdef idiom for things like this would be better
#if defined(NO_GMTIME_R)
ts=gmtime(&t);
#else
gmtime_r(&t, &data);
ts = &data;
#endif
and allow Configure to set the proper -Dfoo. The code seems to be riddled
with expedient platform hacks (e.g. #if THISOS || THATOS || ANOTHEROS).
"Configure shared ..." doesn't seem to be directly supported either.
Everything compiles & links, but no .so or .dyld libraries are created.
Did I miss something? IIRC, you have to do some funky make invocations to
get this (SHLIB_EXT=.dyld &etc).
I'm not exactly sure what you mean by "partial configure", though.
Steve
---------- Forwarded message ----------
Date: Thu, 3 Jan 2002 12:20:07 -0500 (EST)
From: Steve Quirk <[EMAIL PROTECTED]>
To: [EMAIL PROTECTED]
Cc: [EMAIL PROTECTED], [EMAIL PROTECTED]
Subject: Re: Help with openssl-0.9.6c for Mac OS X
ld is trying to link against the lib that Apple ships. Before building
openssl (which will replace Apple's libs), you need to move/rename/unlink
/usr/lib/libcrypto.dylib and /usr/lib/libssl.dylib. Then you *might* be
able to build them.
Now, there's another issue from another email on the list - 'make test'
seems to fail.
localhost> ./Configure threads shared --openssldir=/usr/local \
--prefix=/usr/local darwin-ppc-cc
...
localhost> make test
...
output: f1 64 41 a7 00 00 a4 df 00 00 00 e9 53 e1 69 18 36 ff 78 00 00
expect: d6 a1 41 a7 ec 3c 38 df bd 61 5a 11 62 e1 c7 ba 36 b6 78 58 00error in RC4
multi-call processing
output: f1 64 41 a7 00 00 a4 df 00 00 00 e9 53 e1 69 18 36 ff 78 00 00
expect: d6 a1 41 a7 ec 3c 38 df bd 61 5a 11 62 e1 c7 ba 36 b6 78 58 00done
make[1]: *** [test_rc4] Error 45
make: *** [tests] Error 2
...
Host is
localhost> uname -a
Darwin localhost 1.4 Darwin Kernel Version 1.4: Sun Sep 9 15:39:59 PDT
2001; root:xnu/xnu-201.obj~1/RELEASE_PPC Power Macintosh powerpc
But something doesn't look right:
localhost> ./apps/openssl version -a
OpenSSL 0.9.6b 9 Jul 2001
built on: Sun Sep 2 16:13:21 PDT 2001
platform: Darwin
options: bn(32,32) md2(int) rc4(ptr,int) des(idx,cisc,4,long) idea(int) blowfish(idx)
compiler: cc -arch i386 -arch ppc -g -O3 -pipe -Wno-precomp -arch i386 -arch ppc -pipe
Why does it report "0.9.6b"? I might be inadvertantly getting headers
from /usr/local/include/openssl rather than ./include ... Gimme a minute.
Steve
On Wed, 2 Jan 2002, Jay States wrote:
> i have a question about openssl and Mac OSX... why does ssl-0.9.6c only
> partial configure for osx and is there any place that can help me out?
>
> these are the error message that come up when i make install
> /usr/bin/ld: warning unused multiple definitions of symbol _crypt
> /usr/lib/libcrypto.dylib(fcrypt.o) definition of _crypt
> /usr/lib/libSystem.dylib(crypt.o) unused definition of _crypt
> ______________________________________________________________________
> OpenSSL Project http://www.openssl.org
> Development Mailing List [EMAIL PROTECTED]
> Automated List Manager [EMAIL PROTECTED]
>
______________________________________________________________________
OpenSSL Project http://www.openssl.org
Development Mailing List [EMAIL PROTECTED]
Automated List Manager [EMAIL PROTECTED]