Using -Objc Flag in XCode Gives Mach-O Linker Erro

2019-07-28 18:28发布

问题:

I am trying to integrate google AdMobs into my iOS app, but in order to use their SDK I need to use the -ObjC linker flag to load their category methods. Everything works perfectly without the linker, but when I add the -ObjC flag in Xcode under Debug and Release I get a huge list of Mach-O linker errors (below).

I'm using Box2D, which uses both C and C++, so at first I thought I just needed to include the appropriate linker flag, but I couldn't find one that fixed the errors.

I also tried importing the libstdc++.dylib library, which got rid of the original linker errors and instead replaced them with errors claiming I had a ton of duplicate symbols in my CCScrollLayer.

I'm at a loss. Any help at all would be very, very much appreciated.

-Objc Errors:

    Undefined symbols for architecture i386:
  "std::string::c_str() const", referenced from:
      TiXmlElement* createValueElm<int>(char const*, int) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
      TiXmlElement* createValueElm<float>(char const*, float) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
      TiXmlElement* createValueElm<long long>(char const*, long long) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
      TiXmlElement* createValueElm<unsigned long>(char const*, unsigned long) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
      TiXmlElement* createValueElm<unsigned int>(char const*, unsigned int) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
      void setAttribute<char const*>(TiXmlElement*, char const*, char const*) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
      void setAttribute<int>(TiXmlElement*, char const*, int) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
      ...
  "std::basic_ostringstream<char, std::char_traits<char>, std::allocator<char> >::str() const", referenced from:
      TiXmlElement* createValueElm<int>(char const*, int) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
      TiXmlElement* createValueElm<float>(char const*, float) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
      TiXmlElement* createValueElm<long long>(char const*, long long) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
      TiXmlElement* createValueElm<unsigned long>(char const*, unsigned long) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
      TiXmlElement* createValueElm<unsigned int>(char const*, unsigned int) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
      void setAttribute<char const*>(TiXmlElement*, char const*, char const*) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
      void setAttribute<int>(TiXmlElement*, char const*, int) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
      ...
  "std::allocator<char>::allocator()", referenced from:
      float stringToValue<float>(char const*) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
      int stringToValue<int>(char const*) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
      unsigned int stringToValue<unsigned int>(char const*) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
      unsigned long stringToValue<unsigned long>(char const*) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
      long long stringToValue<long long>(char const*) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
  "std::allocator<char>::~allocator()", referenced from:
      float stringToValue<float>(char const*) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
      int stringToValue<int>(char const*) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
      unsigned int stringToValue<unsigned int>(char const*) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
      unsigned long stringToValue<unsigned long>(char const*) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
      long long stringToValue<long long>(char const*) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
  "std::istream::operator>>(float&)", referenced from:
      float stringToValue<float>(char const*) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
  "std::istream::operator>>(int&)", referenced from:
      int stringToValue<int>(char const*) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
  "std::istream::operator>>(unsigned int&)", referenced from:
      unsigned int stringToValue<unsigned int>(char const*) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
  "std::istream::operator>>(unsigned long&)", referenced from:
      unsigned long stringToValue<unsigned long>(char const*) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
  "std::istream::operator>>(long long&)", referenced from:
      long long stringToValue<long long>(char const*) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
  "std::ostream::operator<<(float)", referenced from:
      TiXmlElement* createValueElm<float>(char const*, float) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
      void setAttribute<float>(TiXmlElement*, char const*, float) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
  "std::ostream::operator<<(int)", referenced from:
      TiXmlElement* createValueElm<int>(char const*, int) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
      void setAttribute<int>(TiXmlElement*, char const*, int) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
  "std::ostream::operator<<(unsigned int)", referenced from:
      TiXmlElement* createValueElm<unsigned int>(char const*, unsigned int) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
  "std::ostream::operator<<(unsigned long)", referenced from:
      TiXmlElement* createValueElm<unsigned long>(char const*, unsigned long) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
  "std::ostream::operator<<(long long)", referenced from:
      TiXmlElement* createValueElm<long long>(char const*, long long) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
  "std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const*, std::allocator<char> const&)", referenced from:
      float stringToValue<float>(char const*) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
      int stringToValue<int>(char const*) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
      unsigned int stringToValue<unsigned int>(char const*) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
      unsigned long stringToValue<unsigned long>(char const*) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
      long long stringToValue<long long>(char const*) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
  "std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string()", referenced from:
      TiXmlElement* createValueElm<int>(char const*, int) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
      TiXmlElement* createValueElm<float>(char const*, float) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
      TiXmlElement* createValueElm<long long>(char const*, long long) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
      TiXmlElement* createValueElm<unsigned long>(char const*, unsigned long) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
      TiXmlElement* createValueElm<unsigned int>(char const*, unsigned int) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
      void setAttribute<char const*>(TiXmlElement*, char const*, char const*) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
      void setAttribute<int>(TiXmlElement*, char const*, int) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
      ...
  "std::basic_istringstream<char, std::char_traits<char>, std::allocator<char> >::basic_istringstream(std::string const&, std::_Ios_Openmode)", referenced from:
      float stringToValue<float>(char const*) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
      int stringToValue<int>(char const*) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
      unsigned int stringToValue<unsigned int>(char const*) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
      unsigned long stringToValue<unsigned long>(char const*) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
      long long stringToValue<long long>(char const*) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
  "std::basic_istringstream<char, std::char_traits<char>, std::allocator<char> >::~basic_istringstream()", referenced from:
      float stringToValue<float>(char const*) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
      int stringToValue<int>(char const*) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
      unsigned int stringToValue<unsigned int>(char const*) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
      unsigned long stringToValue<unsigned long>(char const*) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
      long long stringToValue<long long>(char const*) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
  "std::basic_ostringstream<char, std::char_traits<char>, std::allocator<char> >::basic_ostringstream(std::_Ios_Openmode)", referenced from:
      TiXmlElement* createValueElm<int>(char const*, int) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
      TiXmlElement* createValueElm<float>(char const*, float) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
      TiXmlElement* createValueElm<long long>(char const*, long long) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
      TiXmlElement* createValueElm<unsigned long>(char const*, unsigned long) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
      TiXmlElement* createValueElm<unsigned int>(char const*, unsigned int) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
      void setAttribute<char const*>(TiXmlElement*, char const*, char const*) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
      void setAttribute<int>(TiXmlElement*, char const*, int) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
      ...
  "std::basic_ostringstream<char, std::char_traits<char>, std::allocator<char> >::~basic_ostringstream()", referenced from:
      TiXmlElement* createValueElm<int>(char const*, int) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
      TiXmlElement* createValueElm<float>(char const*, float) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
      TiXmlElement* createValueElm<long long>(char const*, long long) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
      TiXmlElement* createValueElm<unsigned long>(char const*, unsigned long) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
      TiXmlElement* createValueElm<unsigned int>(char const*, unsigned int) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
      void setAttribute<char const*>(TiXmlElement*, char const*, char const*) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
      void setAttribute<int>(TiXmlElement*, char const*, int) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
      ...
  "std::_Rb_tree_decrement(std::_Rb_tree_node_base*)", referenced from:
      std::_Rb_tree_iterator<std::pair<long long const, cpShape*> >::operator--() in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
      std::_Rb_tree_iterator<std::pair<long long const, cpBody*> >::operator--() in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
  "std::_Rb_tree_increment(std::_Rb_tree_node_base*)", referenced from:
      std::_Rb_tree_iterator<std::pair<long long const, cpShape*> >::operator++() in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
      std::_Rb_tree_iterator<std::pair<long long const, cpBody*> >::operator++() in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
  "std::_Rb_tree_insert_and_rebalance(bool, std::_Rb_tree_node_base*, std::_Rb_tree_node_base*, std::_Rb_tree_node_base&)", referenced from:
      std::_Rb_tree<long long, std::pair<long long const, cpShape*>, std::_Select1st<std::pair<long long const, cpShape*> >, std::less<long long>, std::allocator<std::pair<long long const, cpShape*> > >::_M_insert(std::_Rb_tree_node_base*, std::_Rb_tree_node_base*, std::pair<long long const, cpShape*> const&) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
      std::_Rb_tree<long long, std::pair<long long const, cpBody*>, std::_Select1st<std::pair<long long const, cpBody*> >, std::less<long long>, std::allocator<std::pair<long long const, cpBody*> > >::_M_insert(std::_Rb_tree_node_base*, std::_Rb_tree_node_base*, std::pair<long long const, cpBody*> const&) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
  "std::basic_ostream<char, std::char_traits<char> >& std::operator<<<std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*)", referenced from:
      void setAttribute<char const*>(TiXmlElement*, char const*, char const*) in libchipmunk-spacemanager-ios.a(cpSpaceSerializer.o)
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)

Errors with the libstdc++.dylib:

duplicate symbol _OBJC_IVAR_$_CCScrollLayer.layers_ in:
    /Users/Stevenpd/Library/Developer/Xcode/DerivedData/Kobold2D-bhlexwnjvtnneigernvsargfadgb/Build/Intermediates/ballBounce.build/Debug-iphonesimulator/ballBounce-iOS.build/Objects-normal/i386/CCScrollLayer.o
    /Users/Stevenpd/Library/Developer/Xcode/DerivedData/Kobold2D-bhlexwnjvtnneigernvsargfadgb/Build/Products/Debug-iphonesimulator/libcocos2d-extensions-ios.a(CCScrollLayer.o)
duplicate symbol _OBJC_IVAR_$_CCScrollLayer.currentScreen_ in:
    /Users/Stevenpd/Library/Developer/Xcode/DerivedData/Kobold2D-bhlexwnjvtnneigernvsargfadgb/Build/Intermediates/ballBounce.build/Debug-iphonesimulator/ballBounce-iOS.build/Objects-normal/i386/CCScrollLayer.o
    /Users/Stevenpd/Library/Developer/Xcode/DerivedData/Kobold2D-bhlexwnjvtnneigernvsargfadgb/Build/Products/Debug-iphonesimulator/libcocos2d-extensions-ios.a(CCScrollLayer.o)
duplicate symbol _OBJC_IVAR_$_CCScrollLayer.pagesIndicatorNormalColor_ in:
    /Users/Stevenpd/Library/Developer/Xcode/DerivedData/Kobold2D-bhlexwnjvtnneigernvsargfadgb/Build/Intermediates/ballBounce.build/Debug-iphonesimulator/ballBounce-iOS.build/Objects-normal/i386/CCScrollLayer.o
    /Users/Stevenpd/Library/Developer/Xcode/DerivedData/Kobold2D-bhlexwnjvtnneigernvsargfadgb/Build/Products/Debug-iphonesimulator/libcocos2d-extensions-ios.a(CCScrollLayer.o)
duplicate symbol _OBJC_IVAR_$_CCScrollLayer.pagesIndicatorSelectedColor_ in:
    /Users/Stevenpd/Library/Developer/Xcode/DerivedData/Kobold2D-bhlexwnjvtnneigernvsargfadgb/Build/Intermediates/ballBounce.build/Debug-iphonesimulator/ballBounce-iOS.build/Objects-normal/i386/CCScrollLayer.o
    /Users/Stevenpd/Library/Developer/Xcode/DerivedData/Kobold2D-bhlexwnjvtnneigernvsargfadgb/Build/Products/Debug-iphonesimulator/libcocos2d-extensions-ios.a(CCScrollLayer.o)
duplicate symbol _OBJC_IVAR_$_CCScrollLayer.prevScreen_ in:
    /Users/Stevenpd/Library/Developer/Xcode/DerivedData/Kobold2D-bhlexwnjvtnneigernvsargfadgb/Build/Intermediates/ballBounce.build/Debug-iphonesimulator/ballBounce-iOS.build/Objects-normal/i386/CCScrollLayer.o
    /Users/Stevenpd/Library/Developer/Xcode/DerivedData/Kobold2D-bhlexwnjvtnneigernvsargfadgb/Build/Products/Debug-iphonesimulator/libcocos2d-extensions-ios.a(CCScrollLayer.o)
duplicate symbol _OBJC_IVAR_$_CCScrollLayer.scrollTouch_ in:
    /Users/Stevenpd/Library/Developer/Xcode/DerivedData/Kobold2D-bhlexwnjvtnneigernvsargfadgb/Build/Intermediates/ballBounce.build/Debug-iphonesimulator/ballBounce-iOS.build/Objects-normal/i386/CCScrollLayer.o
    /Users/Stevenpd/Library/Developer/Xcode/DerivedData/Kobold2D-bhlexwnjvtnneigernvsargfadgb/Build/Products/Debug-iphonesimulator/libcocos2d-extensions-ios.a(CCScrollLayer.o)
duplicate symbol _OBJC_IVAR_$_CCScrollLayer.startSwipe_ in:
    /Users/Stevenpd/Library/Developer/Xcode/DerivedData/Kobold2D-bhlexwnjvtnneigernvsargfadgb/Build/Intermediates/ballBounce.build/Debug-iphonesimulator/ballBounce-iOS.build/Objects-normal/i386/CCScrollLayer.o
    /Users/Stevenpd/Library/Developer/Xcode/DerivedData/Kobold2D-bhlexwnjvtnneigernvsargfadgb/Build/Products/Debug-iphonesimulator/libcocos2d-extensions-ios.a(CCScrollLayer.o)
duplicate symbol _OBJC_IVAR_$_CCScrollLayer.state_ in:
    /Users/Stevenpd/Library/Developer/Xcode/DerivedData/Kobold2D-bhlexwnjvtnneigernvsargfadgb/Build/Intermediates/ballBounce.build/Debug-iphonesimulator/ballBounce-iOS.build/Objects-normal/i386/CCScrollLayer.o
    /Users/Stevenpd/Library/Developer/Xcode/DerivedData/Kobold2D-bhlexwnjvtnneigernvsargfadgb/Build/Products/Debug-iphonesimulator/libcocos2d-extensions-ios.a(CCScrollLayer.o)
duplicate symbol _OBJC_IVAR_$_CCScrollLayer.marginOffset_ in:
    /Users/Stevenpd/Library/Developer/Xcode/DerivedData/Kobold2D-bhlexwnjvtnneigernvsargfadgb/Build/Intermediates/ballBounce.build/Debug-iphonesimulator/ballBounce-iOS.build/Objects-normal/i386/CCScrollLayer.o
    /Users/Stevenpd/Library/Developer/Xcode/DerivedData/Kobold2D-bhlexwnjvtnneigernvsargfadgb/Build/Products/Debug-iphonesimulator/libcocos2d-extensions-ios.a(CCScrollLayer.o)
duplicate symbol _OBJC_IVAR_$_CCScrollLayer.delegate_ in:
    /Users/Stevenpd/Library/Developer/Xcode/DerivedData/Kobold2D-bhlexwnjvtnneigernvsargfadgb/Build/Intermediates/ballBounce.build/Debug-iphonesimulator/ballBounce-iOS.build/Objects-normal/i386/CCScrollLayer.o
    /Users/Stevenpd/Library/Developer/Xcode/DerivedData/Kobold2D-bhlexwnjvtnneigernvsargfadgb/Build/Products/Debug-iphonesimulator/libcocos2d-extensions-ios.a(CCScrollLayer.o)
duplicate symbol _OBJC_IVAR_$_CCScrollLayer.minimumTouchLengthToSlide_ in:
    /Users/Stevenpd/Library/Developer/Xcode/DerivedData/Kobold2D-bhlexwnjvtnneigernvsargfadgb/Build/Intermediates/ballBounce.build/Debug-iphonesimulator/ballBounce-iOS.build/Objects-normal/i386/CCScrollLayer.o
    /Users/Stevenpd/Library/Developer/Xcode/DerivedData/Kobold2D-bhlexwnjvtnneigernvsargfadgb/Build/Products/Debug-iphonesimulator/libcocos2d-extensions-ios.a(CCScrollLayer.o)
duplicate symbol _OBJC_IVAR_$_CCScrollLayer.minimumTouchLengthToChangePage_ in:
    /Users/Stevenpd/Library/Developer/Xcode/DerivedData/Kobold2D-bhlexwnjvtnneigernvsargfadgb/Build/Intermediates/ballBounce.build/Debug-iphonesimulator/ballBounce-iOS.build/Objects-normal/i386/CCScrollLayer.o
    /Users/Stevenpd/Library/Developer/Xcode/DerivedData/Kobold2D-bhlexwnjvtnneigernvsargfadgb/Build/Products/Debug-iphonesimulator/libcocos2d-extensions-ios.a(CCScrollLayer.o)
duplicate symbol _OBJC_IVAR_$_CCScrollLayer.showPagesIndicator_ in:
    /Users/Stevenpd/Library/Developer/Xcode/DerivedData/Kobold2D-bhlexwnjvtnneigernvsargfadgb/Build/Intermediates/ballBounce.build/Debug-iphonesimulator/ballBounce-iOS.build/Objects-normal/i386/CCScrollLayer.o
    /Users/Stevenpd/Library/Developer/Xcode/DerivedData/Kobold2D-bhlexwnjvtnneigernvsargfadgb/Build/Products/Debug-iphonesimulator/libcocos2d-extensions-ios.a(CCScrollLayer.o)
duplicate symbol _OBJC_IVAR_$_CCScrollLayer.pagesIndicatorPosition_ in:
    /Users/Stevenpd/Library/Developer/Xcode/DerivedData/Kobold2D-bhlexwnjvtnneigernvsargfadgb/Build/Intermediates/ballBounce.build/Debug-iphonesimulator/ballBounce-iOS.build/Objects-normal/i386/CCScrollLayer.o
    /Users/Stevenpd/Library/Developer/Xcode/DerivedData/Kobold2D-bhlexwnjvtnneigernvsargfadgb/Build/Products/Debug-iphonesimulator/libcocos2d-extensions-ios.a(CCScrollLayer.o)
duplicate symbol _OBJC_IVAR_$_CCScrollLayer.pagesWidthOffset_ in:
    /Users/Stevenpd/Library/Developer/Xcode/DerivedData/Kobold2D-bhlexwnjvtnneigernvsargfadgb/Build/Intermediates/ballBounce.build/Debug-iphonesimulator/ballBounce-iOS.build/Objects-normal/i386/CCScrollLayer.o
    /Users/Stevenpd/Library/Developer/Xcode/DerivedData/Kobold2D-bhlexwnjvtnneigernvsargfadgb/Build/Products/Debug-iphonesimulator/libcocos2d-extensions-ios.a(CCScrollLayer.o)
duplicate symbol _OBJC_IVAR_$_CCScrollLayer.stealTouches_ in:
    /Users/Stevenpd/Library/Developer/Xcode/DerivedData/Kobold2D-bhlexwnjvtnneigernvsargfadgb/Build/Intermediates/ballBounce.build/Debug-iphonesimulator/ballBounce-iOS.build/Objects-normal/i386/CCScrollLayer.o
    /Users/Stevenpd/Library/Developer/Xcode/DerivedData/Kobold2D-bhlexwnjvtnneigernvsargfadgb/Build/Products/Debug-iphonesimulator/libcocos2d-extensions-ios.a(CCScrollLayer.o)
duplicate symbol _OBJC_CLASS_$_CCScrollLayer in:
    /Users/Stevenpd/Library/Developer/Xcode/DerivedData/Kobold2D-bhlexwnjvtnneigernvsargfadgb/Build/Intermediates/ballBounce.build/Debug-iphonesimulator/ballBounce-iOS.build/Objects-normal/i386/CCScrollLayer.o
    /Users/Stevenpd/Library/Developer/Xcode/DerivedData/Kobold2D-bhlexwnjvtnneigernvsargfadgb/Build/Products/Debug-iphonesimulator/libcocos2d-extensions-ios.a(CCScrollLayer.o)
duplicate symbol _OBJC_METACLASS_$_CCScrollLayer in:
    /Users/Stevenpd/Library/Developer/Xcode/DerivedData/Kobold2D-bhlexwnjvtnneigernvsargfadgb/Build/Intermediates/ballBounce.build/Debug-iphonesimulator/ballBounce-iOS.build/Objects-normal/i386/CCScrollLayer.o
    /Users/Stevenpd/Library/Developer/Xcode/DerivedData/Kobold2D-bhlexwnjvtnneigernvsargfadgb/Build/Products/Debug-iphonesimulator/libcocos2d-extensions-ios.a(CCScrollLayer.o)
ld: 18 duplicate symbols for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)