• 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: How do I use Frameworks installed to a non-standard location?
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: How do I use Frameworks installed to a non-standard location?


  • Subject: Re: How do I use Frameworks installed to a non-standard location?
  • From: "A.M." <email@hidden>
  • Date: Thu, 20 Dec 2007 18:01:20 -0500


On Dec 20, 2007, at 4:28 PM, gnat wrote:

Hello,
This isn't specifically an xcode question and I apologize for that, but as it's somewhat related i'm hoping someone can at least point me in the right direction.


I would like to start installing non-Apple Frameworks to a custom location (e.g. a data partition/drive) to work around needing to reinstall them after a fresh re-image of the boot partition of our hosts.

I understand how to build an application so that it will find these Frameworks, but I haven't found anything that makes me think it is simple (e.g. a system wide setting, environment variable, etc..) to have every Application add the custom path to it's search path (e.g. in addition to /System/Library/Frameworks, /Library/ Frameworks, and ~/Library/Frameworks) without having to tweak each app (CocoaDev talks about using install_name_tool on their ApplicationLinking page to do this).

Is this possible? Can someone point me in the right direction?

The complication isn't so much in the search path as in the framework binary itself. A framework binaries contains a reference effectively to its enclosing directory in order to be able to locate its resources (such as plists)- 10.3 and 10.4 allows one to make this path relative to the current executing bundle path (@executable_path) or to the enclosing framework that loaded it (@loader_path). That is why you would need to use install_name_tool. Perhaps you can choose to embed the frameworks in the application bundle itself?


But since you have a number of networked computers, are you running OS X Server? You should be able to add the frameworks to the network domain Library/Frameworks. Alternatively, you can run:
install_name_tool -id /My/New/Location Spam.framework/Versions/ Current/Spam
to change the id path of an existing framework.


The answer is that framework "Install Names" are a pain in the butt and there is no easy way to work around them.

Cheers,
M

_______________________________________________
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


References: 
 >How do I use Frameworks installed to a non-standard location? (From: gnat <email@hidden>)

  • Prev by Date: Re: -fstack-protector-all
  • Next by Date: Re: Doc sets updated
  • Previous by thread: How do I use Frameworks installed to a non-standard location?
  • Next by thread: Re: How do I use Frameworks installed to a non-standard location?
  • Index(es):
    • Date
    • Thread