Re: Re[2]: Custom embedded framework not working [Solved]
Re: Re[2]: Custom embedded framework not working [Solved]
- Subject: Re: Re[2]: Custom embedded framework not working [Solved]
- From: "Kyle Sluder" <email@hidden>
- Date: Sun, 29 Jul 2007 04:00:25 -0400
Apple didn't make that decision. Besides, the library name has to be
stored in the binary somehow for the loader to find it. The docs say
that the loader will try the hardcoded path (after interpreting
@executable_path) before falling back on the standard paths. This is
more flexible than only allowing a standard set of paths. The only
other reasonable alternative is to use an alternative naming scheme
like .NET does. Binaries contain a list of strong names of libraries,
which solves versioning and loading in one step, but adds an extra
layer of redirection and removes some of the flexibility innate in the
"everything is a file" mentality of UNIX.
--Kyle Sluder
On 7/28/07, Peter Mulholland <email@hidden> wrote:
> Hello Ken,
>
> Saturday, July 28, 2007, 8:32:52 PM, you wrote:
>
> > While this solves the embedding problem, it still requires framework
> > projects to specify their deploy location. There must be a way to
> > embed a framework without this customization so if anyone knows of a
> > way, it would be a big help
>
> No, it doesn't. The @executable_path is parsed by the loader, not
> Xcode, so it is always relative to where the executable (and
> therefore, the app bundle) is located.
>
> Admittedly, this is not terribly well documented by Apple! I
> discovered this only after seeing it in several other Framework
> projects... SDL, vorbis, etc.
>
> The only other way of solving this problem is to use
> install_name_tool. It really wasn't one of Apple's brightest moves to
> hard-code library load paths into binaries.
>
> --
> Best regards,
> Peter mailto:email@hidden
>
>
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Xcode-users mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden