• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: NSPreferencePane with my own private framework?
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: NSPreferencePane with my own private framework?


  • Subject: Re: NSPreferencePane with my own private framework?
  • From: Ryan Poling <email@hidden>
  • Date: Fri, 7 Mar 2008 15:26:27 -0800

Sherm,

Thanks for the detailed reply. I have tried what you said, but am still having the same problem.

1. In my framework, set "Installation Directory" to "@loader_path/../ Frameworks". I cleaned and built the framework again.

2. In my preference pane, I returned the "Framework search paths" back to their previous (default?) value, cleaned, and built.

3. Using otool, I get the following for the framework itself:

@loader_path/../Frameworks/Myframework.framework/Versions/A/ Myframework (compatibility version 1.0.0, current version 1.0.0)

4.  And for the preference pane:

@executable_path/../Frameworks/Myframework.framework/Versions/A/ Myframework (compatibility version 1.0.0, current version 1.0.0)

So it would seem that the install_path is not being copied over as you indicated should happen. Any more ideas?

Thanks,

-Ryan

<http://www.chimoosoft.com/>



On Mar 7, 2008, at 1:26 PM, Sherm Pendley wrote:

First, you need to build your framework with an install_path that begins with @loader_path instead of @executable_path. Then, rebuild your prefpane - the framework's install_path is copied into your prefpane binary at link time, then at run time dyld uses the stored value to find the framework.

I did see one suggestion (I don't recall who from) to add @loader_path to your framework search path. That's just wrong. @loader_path is not a compile or link time setting. Think about it - how could it be expanded at compile time for a framework, when the linker has no idea at that time what app (or pane) will be loading the framework?

It doesn't seem like this should really be that hard

It's not really - you just need to keep in mind that changing a framework's install_name is a two-step process. You also need to rebuild your app (or pane), so that it gets the new install_name copied into it from the updated framework.

sherm--

_______________________________________________ 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
  • Follow-Ups:
    • Re: NSPreferencePane with my own private framework?
      • From: "Sherm Pendley" <email@hidden>
References: 
 >NSPreferencePane with my own private framework? (From: Ryan Poling <email@hidden>)
 >Re: NSPreferencePane with my own private framework? (From: "Sherm Pendley" <email@hidden>)

  • Prev by Date: Re: Xcode Editor's Regex now uses PCRE instead of ICU?
  • Next by Date: Re: NSPreferencePane with my own private framework?
  • Previous by thread: Re: NSPreferencePane with my own private framework?
  • Next by thread: Re: NSPreferencePane with my own private framework?
  • Index(es):
    • Date
    • Thread