0

I have application which is using Sharekit and Admob together, app is not compiling because of the dublicate symbols. The problem is that Sharekit requires -all_load flag but this flag is conflicting with admob plugin, but i cant remove the all_load flag and put only ObjC flag because in that case Sharekit won't create the instance of some classes.Maybe someone has the same issue , how to fix it ?

Cœur
  • 37,241
  • 25
  • 195
  • 267
taffarel
  • 4,015
  • 4
  • 33
  • 61

2 Answers2

1

This is a common problem when using multiple third-party libraries. If you’re importing them as static libraries, you can strip the duplicate symbols yourself: http://atnan.com/blog/2012/01/12/avoiding-duplicate-symbol-errors-during-linking-by-removing-classes-from-static-libraries

If you have the source code and are compiling the libraries, simply rename the relevant symbols to avoid a conflict.

Jeff Kelley
  • 19,021
  • 6
  • 70
  • 80
  • I'm only upwoting your answer, since i found another easy solution, but anyway thanks for answer @Jeff – taffarel Aug 17 '13 at 14:40
  • You should reply to your own question with the solution you found, then mark it as accepted. This will help other people who Google their way to this thread. – Jeff Kelley Aug 17 '13 at 17:34
1

The problem is solving just by replacing -all_load flag to -force_load.

it should look like this -force_load $(BUILT_PRODUCTS_DIR)/libShareKit.a

taffarel
  • 4,015
  • 4
  • 33
  • 61