iOS开发 - 转源码 - __weak问题解决
在使用clang转换OC为C++代码时,可能会遇到以下问题
- cannot create __weak reference in file using manual reference
原因
__weak弱引用是需要
runtime
支持的,如果我们还只是使用静态编译
,是无法正常转换的
解决方案
需要支持
ARC
,以及需要runtime
支持
因此需要增加两个参数-fobjc-arc
、-fobjc-runtime=ios-13.0.0
最终我们的转换命令就是:
xcrun -sdk iphoneos clang -arch arm64 -rewrite-objc -fobjc-arc -fobjc-runtime=ios-13.0.0 main.m -o main-arm64.cpp
@oubijiexi