I'm building 0.9.9 from the latest SNAP and have been successful with
openssl (the app) but no joy with building .dylib files on MacOSX.
The linker fails with:
    ld: absolute addressing (perhaps -mdynamic-no-pic) used in
    _OPENSSL_rdtsc from libcrypto.a(x86cpuid.o) not allowed in
    slidable image

Playing with it I find the perl asm functions with "EXTRN
\t_OPENSSL_ia32cap_P:DWORD" are problematic.  Unfortunately I don't
have the skills to dive deeper and fix it.  Perhaps this message can
be forwarded to the right person?

For the record, I'm running OSX 10.5.2, gcc 4.0.1, on an Intel
miniMac.  My build commands are:
    ./config --prefix=/usr/local --openssldir=/usr/local/openssl
    make
    make test
    make libcrypto.0.9.9.dylib

Also, I can't find a *global* switch to disable the assembly modules.
Suggestions?

Maybe using Apple's approach? In 0.9.7l, they appear to build the .dylib
files from the .a files (the shlibs target below).

http://www.opensource.apple.com/darwinsource/10.5.2/OpenSSL-46/ Makefile
http://www.opensource.apple.com/darwinsource/tarballs/other/OpenSSL-46.tar.gz

Thanks. Unfortunately the darwin version is 0.9.7, and it doesn't seem to hold any special secrets. The use of the .a files is how 0.9.9 and 0.9.8 do it as well. And... I have been successful building all versions of 0.9.8 including the dylibs using the vanilla Makefile provided with OpenSSL. It is only 0.9.9 that is problematic.

Not mentioned previously and for the record, I also tried:
   make build_libs
   make build-shared
   make link-shared
   make build_crypto
   make libcrypto.0.9.9.dylib
   make libssl.0.9.9.dylib

The problem has to do with the linker not finding position independent code and while -fPIC is the default, explicitly expressing -fPIC didn't change anything.

I traced it down to the assembly code in the x86-specific asm acceleration modules. ...those functions containing "OPENSSL_ia32cap_P". I'm unable to get to the root cause, but when I disable each offending function in turn, the link progresses further before it burps. To help "prove" my point a global switch to disable all the asm accelerations would be nice but I don't see one.

I'm still open to suggestions.

Larry

______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
Development Mailing List                       openssl-dev@openssl.org
Automated List Manager                           [EMAIL PROTECTED]

Reply via email to