What does @loader_path refer to when loading ibplugins from a linked-in framework?

2008-09-24 Thread Dalzhim Dalzhim
Greetings,

I have followed the Interface Builder Plug-in Programmation Guide in order
to make my first ibplugin and there is one problem I haven't been able to
solve yet.  It is stated that when opening a nib file, interface builder
looks at every linked-in framework from the associated xcode project and
automatically loads all the ibplugins located in the resources folder of
these frameworks.  And this is the only behaviour which I can't reproduce.

I have already searched a lot in order to make this work and up to now, I am
using @loader_path/../Frameworks as the installation directory for my
framework.  I have added a run script build phase which creates a symbolic
link in the Contents folder of my ibplugin file so that it points to the
location where my Framework resides (6 folders higher in the folder
hierarchy: ../../../../../..) and this way I have been able to load up my
plugin both in my application and through the plugins tab in Interface
Builder's preferences.  Although, if I start Interface Builder without
having the plugin already installed and that I open up a nib from a xcode
project which links with my framework, it fails to load the nib file saying
that the required plug-ins aren't installed.  I have tried running Interface
Builder from the command line in order to see any error messages but nothing
is being printed to the console unlike what happens if I try to manually
install the plug-in.  In fact I used these console errors to figure out how
to create my symbolic link.

Now that I've presented my problem, here is my question.  Is it possible
that @loader_path is different when Interface Builder loads up ibplugins
from linked-in frameworks than when one manually adds a plugin through the
preferences window?  If that is the case, maybe another well placed symbolic
link could finally allow my plugin to work in every use case I can imagine.


thanks



-Dalzhim
___

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to [EMAIL PROTECTED]


Re: What does @loader_path refer to when loading ibplugins from a linked-in framework?

2008-09-24 Thread Michael Ash
On Wed, Sep 24, 2008 at 11:15 AM, Dalzhim Dalzhim
<[EMAIL PROTECTED]> wrote:
> Greetings,
>
> I have followed the Interface Builder Plug-in Programmation Guide in order
> to make my first ibplugin and there is one problem I haven't been able to
> solve yet.  It is stated that when opening a nib file, interface builder
> looks at every linked-in framework from the associated xcode project and
> automatically loads all the ibplugins located in the resources folder of
> these frameworks.  And this is the only behaviour which I can't reproduce.
>
> I have already searched a lot in order to make this work and up to now, I am
> using @loader_path/../Frameworks as the installation directory for my
> framework.  I have added a run script build phase which creates a symbolic
> link in the Contents folder of my ibplugin file so that it points to the
> location where my Framework resides (6 folders higher in the folder
> hierarchy: ../../../../../..) and this way I have been able to load up my
> plugin both in my application and through the plugins tab in Interface
> Builder's preferences.  Although, if I start Interface Builder without
> having the plugin already installed and that I open up a nib from a xcode
> project which links with my framework, it fails to load the nib file saying
> that the required plug-ins aren't installed.  I have tried running Interface
> Builder from the command line in order to see any error messages but nothing
> is being printed to the console unlike what happens if I try to manually
> install the plug-in.  In fact I used these console errors to figure out how
> to create my symbolic link.
>
> Now that I've presented my problem, here is my question.  Is it possible
> that @loader_path is different when Interface Builder loads up ibplugins
> from linked-in frameworks than when one manually adds a plugin through the
> preferences window?  If that is the case, maybe another well placed symbolic
> link could finally allow my plugin to work in every use case I can imagine.

I would have thought that @loader_path would be the same thing each
time, namely the path of the plugin binary (minus the last path
component, of course).

I'm not sure exactly what your problem might be, but if you type 'man
dyld' you'll find a bunch of debugging environment variables you can
set which might help you track it down.

Mike
___

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to [EMAIL PROTECTED]


Re: What does @loader_path refer to when loading ibplugins from a linked-in framework?

2008-09-25 Thread Dalzhim Dalzhim
Hello Michael,

I would have also thought that @loader_path would be the same thing no
matter how I load my ibplugin into interface builder and maybe it is in fact
the case, although this is the only thing that I haven't successfully
investigated that I can think of up to now in order to solve my problem.  As
I explained previously, the ibplugin I have built successfully loads up in
Interface Builder when I manually add it through the Plugin tab of the
Preferences window.  Although if I do not load it up manually and that I try
to have Interface Builder load it dynamically by opening a nib file in a
xcode project which links against a framework which includes my ibplugin in
its resources directory, the plugin never loads up and I cannot seem to find
any errors to help me find the source of the problem.

I have looked at the man page for dyld and I have found some documentation
in the Dynamic Library Programming Topics.  Although I tried using the
DYLD_PRINT_BINDINGS environment variable I didn't find where this logging is
being done.  Nothing appeared on the console after I ran interface builder
and repeated the usual process:

DYLD_PRINT_BINDINGS=1
cd /Developer/Applications/Interface\ Builder.app/Contents/MacOS
./Interface\ Builder


regards


-Dalzhim


2008/9/25 Michael Ash <[EMAIL PROTECTED]>

> I would have thought that @loader_path would be the same thing each
> time, namely the path of the plugin binary (minus the last path
> component, of course).
>
> I'm not sure exactly what your problem might be, but if you type 'man
> dyld' you'll find a bunch of debugging environment variables you can
> set which might help you track it down.
>
> Mike
> ___
>
> Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)
>
> Please do not post admin requests or moderator comments to the list.
> Contact the moderators at cocoa-dev-admins(at)lists.apple.com
>
> Help/Unsubscribe/Update your Subscription:
> http://lists.apple.com/mailman/options/cocoa-dev/dalzhim.mlist%40gmail.com
>
> This email sent to [EMAIL PROTECTED]
>
___

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to [EMAIL PROTECTED]


Re: What does @loader_path refer to when loading ibplugins from a linked-in framework?

2008-09-25 Thread Michael Ash
On Thu, Sep 25, 2008 at 11:18 AM, Dalzhim Dalzhim
<[EMAIL PROTECTED]> wrote:
> Hello Michael,
>
> I would have also thought that @loader_path would be the same thing no
> matter how I load my ibplugin into interface builder and maybe it is in fact
> the case, although this is the only thing that I haven't successfully
> investigated that I can think of up to now in order to solve my problem.  As
> I explained previously, the ibplugin I have built successfully loads up in
> Interface Builder when I manually add it through the Plugin tab of the
> Preferences window.  Although if I do not load it up manually and that I try
> to have Interface Builder load it dynamically by opening a nib file in a
> xcode project which links against a framework which includes my ibplugin in
> its resources directory, the plugin never loads up and I cannot seem to find
> any errors to help me find the source of the problem.
>
> I have looked at the man page for dyld and I have found some documentation
> in the Dynamic Library Programming Topics.  Although I tried using the
> DYLD_PRINT_BINDINGS environment variable I didn't find where this logging is
> being done.  Nothing appeared on the console after I ran interface builder
> and repeated the usual process:
>
> DYLD_PRINT_BINDINGS=1
> cd /Developer/Applications/Interface\ Builder.app/Contents/MacOS
> ./Interface\ Builder

This just sets a shell variable. IB won't see it. Either export it:

export DYLD_PRINT_BINDINGS=1

Or set it as part of running the binary:

DYLD_PRINT_BINDINGS=1 ./Interface\ Builder

Mike
___

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to [EMAIL PROTECTED]


Re: What does @loader_path refer to when loading ibplugins from a linked-in framework?

2008-09-26 Thread Dalzhim Dalzhim
Hello Michael,

I have tried many things to get my plugin to load automatically in Interface
Builder but I still haven't made it.  I tried many things before testing
something I assumed would work but I realized that even this wasn't enough.

I changed DYLD_FALLBACK_FRAMEWORK_PATH to add the folder which contains my
MyComponent.framework framework but even this didn't help me load up my
plugin.  My guess is that either I modified DYLD_FALLBACK_FRAMEWORK_PATH the
wrong way, either the problem isn't about the framework not being found.

Here is the command line I used:

cd /Developer/Applications/Interface\ Builder.app/Contents/MacOS
DYLD_FALLBACK_FRAMEWORK_PATH=$DYLD_FALLBACK_LIBRARY_PATH:/Users/gaubut/DevDruide/Sortie/Debug/
./Interface\ Builder


regards


-Dalzhim



2008/9/25 Michael Ash <[EMAIL PROTECTED]>

> This just sets a shell variable. IB won't see it. Either export it:
>
> export DYLD_PRINT_BINDINGS=1
>
> Or set it as part of running the binary:
>
> DYLD_PRINT_BINDINGS=1 ./Interface\ Builder
>
> Mike
> ___
>
> Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)
>
> Please do not post admin requests or moderator comments to the list.
> Contact the moderators at cocoa-dev-admins(at)lists.apple.com
>
> Help/Unsubscribe/Update your Subscription:
> http://lists.apple.com/mailman/options/cocoa-dev/dalzhim.mlist%40gmail.com
>
> This email sent to [EMAIL PROTECTED]
>
___

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to [EMAIL PROTECTED]