Xamarin.iOS本机链接错误MTOUCH MT5210未定义符号std :: string

问题描述 投票:0回答:1

我的Xamarion.iOS绑定项目具有指向所有必需的本机视频SDK库和本机OS框架的链接。我已经使用Frameworks属性设置了所需的框架。其他设置包括SmartLink = true,ForceLoad = true,IsCxx = true,LinkerFlags =“-lc ++”。可以将其内置到C#DLL中。在iOS项目中,DLL被引用和使用。但是,存在本机链接错误。

MTOUCH:错误MT5210:本机链接失败,未定义符号:std :: string :: _ Rep :: _ M_destroy(std :: allocator const&)。请验证是否已引用了所有必要的框架,并且本机库已正确链接。

构建日志中的详细信息:体系结构arm64的未定义符号:“ std :: string :: _ Rep :: _ M_destroy(std :: allocator const&)”,引用自:libHCCore.a(HPR_Utils.o)中的HPR_UTF82A(char const *)libHCCore.a(HPR_Utils.o)中的HPR_A2UTF8(char const *)从以下位置引用的“ std :: string :: _ Rep :: _ S_empty_rep_storage”libHCCore.a(HPR_Utils.o)中的HPR_UTF82A(char const *)libHCCore.a(HPR_Utils.o)中的HPR_A2UTF8(char const *)“ std :: string :: assign(char const *,unsigned long)”,引用自:libHCCore.a(HPR_Utils.o)中的HPR_UTF82A(char const *)libHCCore.a(HPR_Utils.o)中的HPR_A2UTF8(char const *)“ std :: basic_string,std :: allocator> :: basic_string(char const *,std :: allocator const&)”,引用自:libHCCore.a(HPR_Utils.o)中的HPR_A2UTF8(char const *)“ std :: basic_string,std :: allocator> :: basic_string(std :: string const&)”,引用自:libHCCore.a(HPR_Utils.o)中的HPR_A2UTF8(char const *)ld:找不到体系结构arm64的符号clang:错误:链接器命令失败,退出代码为1(使用-v查看调用)

包装错误:

[MTOUCH:警告MT5215:引用'系统'可能需要附加-framework = XXX或-lXXX指令以用于本机链接器(MT5215)]

错误MT5201:本机链接失败。请查看构建日志和提供给gcc的用户标志:-ObjC(MT5201)

MTOUCH:错误MT5202:本机链接失败。请查看构建日志。 (MT5202)

clang:错误:链接器命令失败,退出代码为1(使用-v查看调用)

请照亮。谢谢。

Xcode中没有这样的本机链接错误。构建设置:

enter image description here

我的Xamarion.iOS绑定项目具有指向所有必需的本机视频SDK库和本机OS框架的链接。我已经使用Frameworks属性设置了所需的框架。其他设置...

dependency-injection xamarin.ios linker native static-linking
1个回答
0
投票

托管链接

© www.soinside.com 2019 - 2024. All rights reserved.