on 7/25/01 3:59 AM, Marko Asplund at [EMAIL PROTECTED] wrote:

>> ...
>> Now you can run config from the command line:
>> 
>> ./config shared threads -D_REENTRANT -DUSE_TOD -DDARWIN -O3
> 
> why do you need to add the compiler flags to the command line? you can do
> it in config and Configure.

I probably did something wrong in Configure, because the compiler flags I
put in there weren't taking effect.

>> ...
>> And run make.  Sadly, I still haven't figured out how to get the dynamic
>> libraries building correctly, but I have figured out how to do them
>> manually.  Try these commands, making sure you do libcrypto _before_ you do
>> libssl (or else libssl.dylib will include the contents of libcrypto.a).
> 
> the attached patch allows you to build shared OpenSSL libraries. it uses a
> bit different compiler (in Configure) and linker flags than you do. what's
> the purpose of all_load and prebind linker flags?

all_load is used when you want to load all of the symbols from a .a library
into your final binary.  If you don't use it, the linker will discard all of
the symbols you didn't use.  In our case, we're trying to turn a .a file
into a .dylib file, so we want all the symbols.

prebind does a neat trick where is pre-resolves the location of all the
symbols needed in the dynamic libraries used by a binary.  This speeds up
launch time dramatically.  If you app is pre-bound to its dynamic libraries,
and they are all pre-bound to their dynamic libs, then launching an app is
much faster.  But if the library is not the same as the one your app was
pre-bound to, then the loader reverts to the normal linking procedures.

Prebinding only works if the app and ALL of its dynamic libs have been
prebound, so it isn't always possible to get it working for a specific app.

cjh

______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
User Support Mailing List                    [EMAIL PROTECTED]
Automated List Manager                           [EMAIL PROTECTED]

Reply via email to