I can't run my app only on the iOS Simulator since I updated to Aviary SDK 4.4. I can run the app on my iPhone and iPad.
clang: error: linker command failed with exit code 1 (use -v to see invocation)
ld: 30 duplicate symbols for architecture x86_64
The framework and the bundle are visible in "Link binaries with Libraries" and "Bundle ressources".
The Framework search path is OK in build settings.
It looks like the Aviary framework was managed twice ?
I leave/restart Xcode, clean the app in iOS simulator, clean target and destroy DerivedData without success.
Very strange I have no problems in the real devices.
I got this problem resolved. Here is how:
Solution
Do not use
#import <AviarySDK/AviarySDK.h>
, instead of that, import the classes that you're using directly. Like:#import <AviarySDK/AVYPhotoEditorController.h>
etc.Reason
The reason I believe lies in the newly introduced
AVYPhotoEditorCompatibility.h
, which is by default included in<AviarySDK/AviarySDK.h>
.I think here is the problematic code that is using
typedef
withconst