使用 Clang -rewrite-objc xxx.m 命令的时候,无法编译成xxx.cpp 文件,报如下错误:
@property NSInteger weekOfYear __attribute__((availability(macos,introduced=10.7))) __attribute__((availability(ios,introduced=5.0))) __attrib...
或者
@property (class, NS_NONATOMIC_IOSONLY, readonly, copy) NSArray *writableTypeIdentifiersForItemProvider;
经查阅资料得知,当前xcode的编译环境所用到的sdk如下:
xcodebuild -showsdks
根据错误的属性的修饰符知是macos 的写法,那么就是clang 在i编译的时候默认使用了macos 的sdk,那么综上可知,需要编译的文件使用错误的sdk,通过以下命令可成功编译出xxx.cpp文件
xcrun -sdk iphonesimulator9.3 clang -rewrite-objc xxx.m