Re: Avoiding link conflicts with a static library
Re: Avoiding link conflicts with a static library
- Subject: Re: Avoiding link conflicts with a static library
- From: Alastair Houghton <email@hidden>
- Date: Wed, 04 Apr 2018 19:34:00 +0100
On 4 Apr 2018, at 17:25, Redler Eyal <email@hidden> wrote:
>
> We're developing an SDK for iOS, the SDK is delivered in a statically-linked
> framework. Our library uses openCV and we link OpenCV into the delivered
> framework binary.
>
> This SDK was deployed successfully with some clients but we're having an
> issue with one client whose application also links indirectly (via card-io)
> with openCV. The version of openCV they're using is different then then one
> we use and as a result of this conflict, the application crashes upon use of
> our SDK.
>
> We are aware that the following are possible solutions to the problem:
> a. Switch to use the same version of OpenCV as our client.
> b. Build our framework as a dynamic library (where we a supposed to be able
> to hide openCV inside)
> Both of these options are not optimal for us and we trying to see if we have
> any other option.
You could rename the symbols in your copy of OpenCV so that they don’t match
the standard ones. One way to do that is with the preprocessor (use #defines to
change the names of the OpenCV functions you use), which potentially avoids
altering the OpenCV sources themselves (you can use a prefix header to get your
#defines into the OpenCV build process if necessary).
Kind regards,
Alastair.
--
http://alastairs-place.net
_______________________________________________
Cocoa-dev mailing list (email@hidden)
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:
This email sent to email@hidden