Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Integrating AdobeMobileSDK host app and extension libraries causes duplicate link errors #6241

Closed
1 task done
mgrebenets opened this issue Nov 25, 2016 · 2 comments
Closed
1 task done
Labels
s1:awaiting input Waiting for input from the original author

Comments

@mgrebenets
Copy link

mgrebenets commented Nov 25, 2016

Report

What did you do?

So I have an app with app extensions (e.g. push notifications extensions)

  • I add AdobeMobileSDK-Framework pod to my main (host) target
  • Next I add AdobeMobileExtensionSDK-Framework pod to my app extension target
  • Then run pod install and build a project.

What did you expect to happen?

Expected to build the app.

What happened instead?

Instead I get duplicate symbols link errors, like this:

duplicate symbol _OBJC_METACLASS_$_ADBMessageMatcherLessThan in:
    /path/to/pod/AdobeMobileExtensionSDK.framework/AdobeMobileExtensionSDK(ADBMessageMatcherLessThan.o)
  /path/to/pod/adobemobilesdk-framework/AdobeMobileSDK.framework/AdobeMobileSDK(ADBMessageMatcherLessThan.o)

I am assuming that's because Adobe's libAdobeMobile.a and libAdobeMobile_Extension.a have identical symbols. And then as described here: http://blog.cocoapods.org/CocoaPods-1.1.0/, CocoaPods

this means that pod install has to locate any host targets, in which the extension belongs, to integrate those extension targets' dependencies there.

Indeed I can see both AdobeMobileSDK-Framework and AdobeMobileExtensionSDK-Framework in HEADER_SEARCH_PATHS, OTHER_CFLAGS and OTHER_LDFLAGS in the host target's Pods-Target.debug.xcconfig.

So is it really possible to integrate Adobe's libraries or frameworks with CocoaPods this way?

Is it something that CP could address or something that could be resolved with use of cocoapods-package and name mangling?

Or should I get back to Adobe support and request them to have symbols mangled/renamed instead?

CocoaPods Environment

ℹ Please replace this with the output of pod env.

Stack

   CocoaPods : 1.1.1
        Ruby : ruby 2.2.2p95 (2015-04-13 revision 50295) [x86_64-darwin14]
    RubyGems : 2.4.8
        Host : Mac OS X 10.11.6 (15G1108)
       Xcode : 8.1 (8B62)
         Git : git version 2.9.3 (Apple Git-75)
Ruby lib dir : /Users/maksym/.rvm/rubies/ruby-2.2.2/lib
Repositories : artsy - https://github.com/Artsy/Specs.git @ 2a9ddb8e56aa3830d12c0dafafd82307684bcaad
               master - https://github.com/CocoaPods/Specs.git @ 11a0de6f911201ab7ca15e6df96f222f044e19ad
               odp-cbapodspecs.ios - ssh://git@stash.odp.cba:7999/mob/cbapodspecs.ios.git @ 627b2c94ce26f55e4e92959514a8dc3ece0925f7

Installation Source

Executable Path: /Users/maksym/.rvm/gems/ruby-2.2.2/bin/pod

Plugins

claide-plugins        : 0.9.1
cocoapods-deintegrate : 1.0.1
cocoapods-packager    : 1.5.0
cocoapods-playgrounds : 1.2.2
cocoapods-plugins     : 1.0.0
cocoapods-search      : 1.0.0
cocoapods-stats       : 1.0.0
cocoapods-trunk       : 1.1.1
cocoapods-try         : 1.1.0
slather               : 2.3.0
@benasher44
Copy link
Member

Hi @mgrebenets! Can you please post your Podfile for this project? Thanks!

@benasher44 benasher44 added the s1:awaiting input Waiting for input from the original author label Dec 21, 2016
@benasher44
Copy link
Member

I'm going to close this one, since there hasn't been any activity on it in months. If you're still experiencing this issue, please reopen it with an updated Podfile, and I'd be happy to help out! Have a great day!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
s1:awaiting input Waiting for input from the original author
Projects
None yet
Development

No branches or pull requests

2 participants