On Oct 5, 2011, at 16:56, Donald Ness wrote:
I understand linking, but I wasn't clear on Bundle loading. After reading up on on it, an App is indeed a "Bundle" but not a "Loadable Bundle", so it can't be dynamically loaded which is what I was trying to do.
It's not just that. I think you still don't know what this is about. Especially, you don't understand how quicklook plugins work (hint: they're NOT plugins for the app), and also you don't understand what the "bundle loader" setting does (hint: it's about the executable that *loads* the bundle). The plugin cannot use something from the app, because the app is not running when the plugin is used (or when it is the plugin does not know about it).
What I need from my App code is the NSDocument, as well as the associated xib and other object and resource dependencies.
I'm thinking the best option is to recompile the sources in my app project in my plugin project.
Is there a better way? I want to do the simplest thing that just works.
First of all: is that REALLY what you want? (And if you say yes, than my second question is: is this REALLY REALLY what you need?) It sounds wrong. NSDocument is designed for an (document based) app. Not for anything else. So if you use it in another context, it may fail (you don't know what code Apple uses, neither do I, so you also don't know what further assumptions are made.)
So you should reconsider your design. Use only what you need in the plugin. You could separate the stuff that you need in both your app (i.e. in your document, so not the document class itself) and your plugin to separate source and resource files. Perhaps put that in a framework (or loadable bundle) that's included in both the plugin and the app.
Christiaan
On Wed, Oct 5, 2011 at 4:45 AM, Christiaan Hofman
<email@hidden> wrote:
On Oct 5, 2011, at 8:29, Donald Ness wrote:
> Hello,
>
> I'm having some trouble linking my document-based application with a QuickLook plugin.
>
> I can compile the plugin OK. And I can run it if I remove all references to my NSDocument (and just render a red square as the quicklook for example) -- I can see it render in the qlmanage tool.
>
> However, once I reference my NSDocument subclass, I receive this error:
>
> [ERROR] Can't load plug-in at /Users/donald/Development/MyApp/build/Debug/MyAppQuickLook.qlgenerator: The bundle “MyAppQuickLook” couldn’t be loaded.
>
> Which leads me to believe I have a linking error.
>
> Here's how I set up my project on Xcode 4:
>
> - Added a QuickLook plug-in target to my main project called MyAppQuickLook
> - Set MyApp as a target dependency for MyAppQuickLook
> - In build settings under Linking for MyAppQuickLook, I set "Bundle Loader" to: $(BUILT_PRODUCTS_DIR)/MyApp.app/Contents/MacOS/MyApp
>
> How do I investigate and fix this? The error message doesn't help much, and I'm stuck. Any help would be greatly appreciated.
>
> Thanks,
>
> Donald
Are you really saying that you want the *plugin* to link to the *app*? That makes no sense. You apparently don't understand what linking and loading means. So you should read up in the docs what that means. So in short: you cannot do this, it';s impossible and makes no sense.
Christiaan
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