• 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
Loadable Bundle Question
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Loadable Bundle Question


  • Subject: Loadable Bundle Question
  • From: Rush Manbert <email@hidden>
  • Date: Wed, 30 Jan 2008 17:09:56 -0800

Hi All,

I posted a little while ago about linker errors that I was seeing. ("How to get rid of this linker warning?") After posting, I got to thinking about what I was really trying to do and what problems I was going to have (at least potentially), so I started looking for alternate solutions.

My issue is that I need to provide some pretty complicated functionality that my customers can use in their applications. I need to do this on both Mac and Windows platforms. Currently, the way I have packaged things is that I provide a single static library that has been linked against all of the static libraries on which it depends. These include libxml2, Openssl, and a number of the Boost libraries, plus more. My library API is very clean and fairly small. For each platform, I provide a platform-specific adapter. For OS X, this is written in Objective-C, and provides the bridge to the C++ code that is in the library.

Because of how I link the final library, it carries all of the libraries on which it depends. This may cause problems for my customers who link against my library because they may also be using Boost or Openssl, and they may use a different version than what I used. The result could be unexplained behavior of their apps.

I don't want to provide a list of required libraries and force my customers to get them for themselves. They are paying me to provide this code to them, and it wouldn't fix possible version problems anyway.

I should also mention that the applications that my customers build will be run by their customers. The functionality that I provide must be able to run without installing anything on the end user's system.

All this brings me to my Loadable Bundle question. I think that the solution to my problem in OS X is to package up my library into a Loadable Bundle and expose the API through a single entry point. If I understand correctly, I believe that my bundle will be linked like an application, so whatever static libraries I used will only be visible within my bundle and my customers can use different versions of the same libraries without there being any problems. I assume that my customers can include my bundle within their app and load it at runtime

I'm sure many of you have written and used Loadable Bundles. I haven't. Does this sound like the correct approach for me to take? Is there something better I should look at?

Thanks,
Rush
_______________________________________________
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


  • Prev by Date: Re: Find In Project Broken In 2.5 When Using All-In-One View?
  • Next by Date: Re: Best way to get warnings for 10.5 only calls?
  • Previous by thread: Re: Find In Project Broken In 2.5 When Using All-In-One View?
  • Next by thread: recursive header search path bug
  • Index(es):
    • Date
    • Thread