Unity3D集成直播后导出到XCode编译出错

ld: warning: arm64 function not 4-byte aligned: _unwind_tester from /Users/marvin/Documents/ProjectIOS/Libraries/libiPhone-lib.a(unwind_test_arm64.o)
Undefined symbols for architecture arm64:
OBJC_CLASS$_MLModel”, referenced from:
objc-class-ref in AgoraRtcEngineKit(libmedia_engine.a-arm64-master.o)
OBJC_CLASS$_MLFeatureValue”, referenced from:
objc-class-ref in AgoraRtcEngineKit(libmedia_engine.a-arm64-master.o)
“_vImageScale_Planar8”, referenced from:
AgoraRTC::SuperResolutionModule::SuperResolutionScale::resizeUVChannel(AgoraRTC::I420VideoFrame*, AgoraRTC::I420VideoFrame*) in AgoraRtcEngineKit(libmedia_engine.a-arm64-master.o)
“_kVTCompressionPropertyKey_ProfileLevel”, referenced from:
AgoraRTC::VideoToolboxEncoder::ConfigureCompressionSession() in AgoraRtcEngineKit(libmedia_engine.a-arm64-master.o)
“_kVTProfileLevel_H264_High_AutoLevel”, referenced from:
AgoraRTC::VideoToolboxEncoder::ConfigureCompressionSession() in AgoraRtcEngineKit(libmedia_engine.a-arm64-master.o)
“_kVTCompressionPropertyKey_AllowFrameReordering”, referenced from:
AgoraRTC::VideoToolboxEncoder::ConfigureCompressionSession() in AgoraRtcEngineKit(libmedia_engine.a-arm64-master.o)
“_kVTCompressionPropertyKey_AverageBitRate”, referenced from:
AgoraRTC::VideoToolboxEncoder::SetRates(unsigned int, unsigned int) in AgoraRtcEngineKit(libmedia_engine.a-arm64-master.o)
AgoraRTC::VideoToolboxEncoder::SetBitrateBps(unsigned int) in AgoraRtcEngineKit(libmedia_engine.a-arm64-master.o)
AgoraRTC::VideoToolboxEncoder::ConfigureCompressionSession() in AgoraRtcEngineKit(libmedia_engine.a-arm64-master.o)
AgoraRTC::VideoToolboxEncoder::SetEncoderBitrateBps(unsigned int) in AgoraRtcEngineKit(libmedia_engine.a-arm64-master.o)
“_kVTCompressionPropertyKey_DataRateLimits”, referenced from:
AgoraRTC::VideoToolboxEncoder::SetRates(unsigned int, unsigned int) in AgoraRtcEngineKit(libmedia_engine.a-arm64-master.o)
AgoraRTC::VideoToolboxEncoder::SetBitrateBps(unsigned int) in AgoraRtcEngineKit(libmedia_engine.a-arm64-master.o)
AgoraRTC::VideoToolboxEncoder::ConfigureCompressionSession() in AgoraRtcEngineKit(libmedia_engine.a-arm64-master.o)
AgoraRTC::VideoToolboxEncoder::SetEncoderBitrateBps(unsigned int) in AgoraRtcEngineKit(libmedia_engine.a-arm64-master.o)

这个报错是因为没有正确导入库 CoreML.framework:

请参考 快速开始 文档,正确集成 SDK。

少了两个错误,还有38处。还少了什么吗


请导入上图所示的系统库。

我按照这样换了后还有2个错


请问Unity3D的SDK里面包含的IOS用的文件不是最新的吗?从U3D里面导出的XCODE项目,怎么还要到XCODE里面再重新这样引用?

你从 Unity3D 里导出的 Xcode 工程,和 Unity3D 的工程,是在同一台 PC 里吗?

同一台PC,双系统,Unity3d项目是在windows下开发并导出成XCODE文件。然后到MacBook系统上编译XCODE文件。

你截图看下 xcode 工程里的 AgoraRtcKit.framework 文件

今天上午从官网下载替换的
image

能提供下 Xcode 工程里的截图么,从 Xcode 打开 AgoraRtcKit.framework 文件

怀疑你当前的 xcode 工程因为误操作而被污染了,建议可以重新从 Unity3D 导出一份 xcode 工程,然后先把需要的系统依赖库加进去,不要做其它操作。如果还有报错,请把报错信息贴一下。

我从新导了一份,然后加入了要引用的,编译出错

这和上面的是一样的报错啊,麻烦导入一下这个系统库。

哎,原来是要几个地方都加,我开始只在Unity-iPhone里面加了,UnityFramework没加。


还有20个错

十分感谢不厌其烦的回复我, 现在问题解决了,现在总结经验就是要把项目的三个子项都要引用那些framework进去。

1 个赞

好的,不客气~问题解决了就好!