Discussion:
Indirect linking to libcrypto on Leopard
Christiaan Hofman
2011-03-21 00:27:54 UTC
Permalink
I am trying to build a framework with the 10.6 SDK and 10.5 deployment target. However, I find that it fails to load on Leopard, the crash report says it fails to find libcrypto.0.9.8.dylib.

I am aware of the (very annoying) problem that the 10.6 SDK links to this version of this lib, which is incompatible with the one (0.9.7) available on 10.5.x.

However, I do not link to this library. So can anyone perhaps tell me why it would even try to link to this library? Could it be that one of the libraries/frameworks that are linked in my framework could indirectly link to it? I tried to check this using otool, but also none of the frameworks and libraries seem to link to it. I am linking to Foundation, AppKit, CoreServices, WebKit, Security, IOKit, does anyone know whether any of these give this problem?

thanks
Christiaan
Shantonu Sen
2011-03-21 01:01:04 UTC
Permalink
At runtime, your app will use the OS's version of AppKit, Security, etc. Those are always "fine", otherwise the system wouldn't boot.

You haven't given enough information. What is the error message? The string from dyld will tell you exactly who is linking against the library.

Shantonu
Post by Christiaan Hofman
I am trying to build a framework with the 10.6 SDK and 10.5 deployment target. However, I find that it fails to load on Leopard, the crash report says it fails to find libcrypto.0.9.8.dylib.
I am aware of the (very annoying) problem that the 10.6 SDK links to this version of this lib, which is incompatible with the one (0.9.7) available on 10.5.x.
However, I do not link to this library. So can anyone perhaps tell me why it would even try to link to this library? Could it be that one of the libraries/frameworks that are linked in my framework could indirectly link to it? I tried to check this using otool, but also none of the frameworks and libraries seem to link to it. I am linking to Foundation, AppKit, CoreServices, WebKit, Security, IOKit, does anyone know whether any of these give this problem?
thanks
Christiaan
_______________________________________________
MacOSX-dev mailing list
http://www.omnigroup.com/mailman/listinfo/macosx-dev
Christiaan Hofman
2011-03-21 01:14:31 UTC
Permalink
I have figured out where the problem is. Someone seems to have added an explicit "-lcrypto" linker flag, rather than properly adding it in the link build phase, so i did not see it at first.

Christiaan
Post by Shantonu Sen
At runtime, your app will use the OS's version of AppKit, Security, etc. Those are always "fine", otherwise the system wouldn't boot.
You haven't given enough information. What is the error message? The string from dyld will tell you exactly who is linking against the library.
Shantonu
Post by Christiaan Hofman
I am trying to build a framework with the 10.6 SDK and 10.5 deployment target. However, I find that it fails to load on Leopard, the crash report says it fails to find libcrypto.0.9.8.dylib.
I am aware of the (very annoying) problem that the 10.6 SDK links to this version of this lib, which is incompatible with the one (0.9.7) available on 10.5.x.
However, I do not link to this library. So can anyone perhaps tell me why it would even try to link to this library? Could it be that one of the libraries/frameworks that are linked in my framework could indirectly link to it? I tried to check this using otool, but also none of the frameworks and libraries seem to link to it. I am linking to Foundation, AppKit, CoreServices, WebKit, Security, IOKit, does anyone know whether any of these give this problem?
thanks
Christiaan
_______________________________________________
MacOSX-dev mailing list
http://www.omnigroup.com/mailman/listinfo/macosx-dev
Loading...