ale*_*our 3 compiler-errors objective-c ios aviary
自从我更新到Aviary SDK 4.4后,我无法在iOS模拟器上运行我的应用程序.我可以在iPhone和iPad上运行该应用程序.
clang: error: linker command failed with exit code 1 (use -v to see invocation)
ld: 30 duplicate symbols for architecture x86_64
Run Code Online (Sandbox Code Playgroud)
框架和包在"链接二进制文件库"和"捆绑包资源"中可见.
框架搜索路径在构建设置中是正常的.
看起来Aviary框架被管理了两次?
我离开/重新启动Xcode,在iOS模拟器中清理应用程序,清理目标并销毁DerivedData但没有成功.
很奇怪我在真实设备上没有问题.
我解决了这个问题.方法如下:
不要使用#import <AviarySDK/AviarySDK.h>,而不是直接导入您正在使用的类.喜欢:#import <AviarySDK/AVYPhotoEditorController.h>等
我相信的原因在于新推出的AVYPhotoEditorCompatibility.h,默认包括在内<AviarySDK/AviarySDK.h>.
我觉得这里是使用有问题的代码typedef与const
typedef AVYPhotoEditorPremiumAddOn AFPhotoEditorPremiumAddOn AVY_PREMIUM_ADDON_NAMESPACE_DEPRECATED_ATTRIBUTE;
AVY_PREMIUM_ADDON_NAMESPACE_DEPRECATED_ATTRIBUTE AFPhotoEditorPremiumAddOn const AFPhotoEditorPremiumAddOnNone = AVYPhotoEditorPremiumAddOnNone;
AVY_PREMIUM_ADDON_NAMESPACE_DEPRECATED_ATTRIBUTE AFPhotoEditorPremiumAddOn const AFPhotoEditorPremiumAddOnHiRes = AVYPhotoEditorPremiumAddOnHiRes;
AVY_PREMIUM_ADDON_NAMESPACE_DEPRECATED_ATTRIBUTE AFPhotoEditorPremiumAddOn const AFPhotoEditorPremiumAddOnWhiteLabel = AVYPhotoEditorPremiumAddOnWhiteLabel;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
739 次 |
| 最近记录: |