mPaaS 项目编译踩坑
2024-01-17 本文已影响0人
tom__zhu
环境:
[Mac] Apple M1 Pro
[macOS] 13.3.1 (22E261)
[Xcode] Version 14.3.1 (14E300c)
mPaaS新建工程,配置组件后 Xcode 运行Demo工程遇到一些编译问题
>1 旧版本
版本老旧
Showing All Errors Only
File not found: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/arc/libarclite_iphonesimulator.a

解决方案
修改 iOS Deployment Target,没有或是老旧系统会触发这个问题。

>2
### 架构失败
In /Users/Shared/.mpaaskit_sdk/repo/frameworks/APLog/3.0.2.231019134014/APLog.framework/APLog(APLogUploader.o), building for iOS Simulator, but linking in object file built for iOS, file '/Users/Shared/.mpaaskit_sdk/repo/frameworks/APLog/3.0.2.231019134014/APLog.framework/APLog' for architecture arm64

解决方案
- Build Settings 中 搜索 Build Active Architecture Only,然后设置成yes下面的
-
Exclude Architectures下面加 Any SDK = arm64.
解决方案
>3
编译错误
提示 MPLongLinkService 中的符号 MPLongLinkDeviceInfo 缺失
Undefined symbols for architecture x86_64:
"_OBJC_CLASS_$_MFMessageComposeViewController", referenced from:
objc-class-ref in MPLongLinkService(MPLongLinkDeviceInfo.o)
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

很无语,mPaaS 应该有分析库之间的依赖关系,但是却没按照依赖链把相关库导入。
解决方案
移除 MPLongLinkService 库