使用Objective sharpie我为内部Objective C库创建了一个绑定项目,绑定项目包括三个ios框架源
绑定项目构建正常并按预期生成输出dll,使用iLSpy检查输出dll确认本机引用包含在dll中。创建了一个演示应用程序来测试绑定,问题是我无法让演示应用程序编译,它失败了
架构x86_64的未定义符号:
" _IOS_DERIVED_CREDENTIALS",引自:_IOS_STORAGE in IdentosSDK(ios_storage.o)" _OPENSSL_DERIVED_CREDENTIALS", 引自:_OPENSSL_STORAGE in IdentosSDK(openssl_storage.o)" _OPENSSL_EC",引自:
IdentosSDK中的_create_key_with_type(openssl_storage_identity.o)" _PENDING_REGISTRATION",引自:
IdentosSDK中的_to_initialized_state(id_start_state.o)
在最终失败之前
MTOUCH:错误MT5210:本机链接失败,未定义符号: _IOS_DERIVED_CREDENTIALS。请验证是否已引用所有必需的框架并且本机库是否正确 链接.MTOUCH:错误MT5210:本机链接失败,未定义 符号:_OPENSSL_DERIVED_CREDENTIALS。请验证所有 已经引用了必要的框架,本机库也是如此 正确地联系在一起。
我试过传递传递给mtouch的gcc_flags,如下所示
我知道绑定项目中的框架支持适当的体系结构,因为运行lipo -info libIdentosSDK.a会产生:armv7 i386 x86_64 arm64
不知道还有什么可以解决这个问题。任何帮助将不胜感激。完整的build log
MTOUCH : error MT5210: Native linking failed, undefined symbol: _IOS_DERIVED_CREDENTIALS. Please verify that all the necessary frameworks have been referenced and native libraries are properly linked in.
MTOUCH : error MT5210: Native linking failed, undefined symbol: _OPENSSL_DERIVED_CREDENTIALS. Please verify that all the necessary frameworks have been referenced and native libraries are properly linked in.
MTOUCH : error MT5210: Native linking failed, undefined symbol: _OPENSSL_EC. Please verify that all the necessary frameworks have been referenced and native libraries are properly linked in.
MTOUCH : error MT5210: Native linking failed, undefined symbol: _PENDING_REGISTRATION. Please verify that all the necessary frameworks have been referenced and native libraries are properly linked in.
MTOUCH : error MT5210: Native linking failed, undefined symbol: _add_events. Please verify that all the necessary frameworks have been referenced and native libraries are properly linked in.
MTOUCH : error MT5210: Native linking failed, undefined symbol: _asym_decrypt. Please verify that all the necessary frameworks have been referenced and native libraries are properly linked in.
MTOUCH : error MT5210: Native linking failed, undefined symbol: _asym_encrypt. Please verify that all the necessary frameworks have been referenced and native libraries are properly linked in.
MTOUCH : error MT5210: Native linking failed, undefined symbol: _asym_free. Please verify that all the necessary frameworks have been referenced and native libraries are properly linked in.
MTOUCH : error MT5210: Native linking failed, undefined symbol: _asym_sign. Please verify that all the necessary frameworks have been referenced and native libraries are properly linked in.
MTOUCH : error MT5210: Native linking failed, undefined symbol: _asym_verify. Please verify that all the necessary frameworks have been referenced and native libraries are properly linked in.
MTOUCH : error MT5210: Native linking failed, undefined symbol: _cleanup_events. Please verify that all the necessary frameworks have been referenced and native libraries are properly linked in.
MTOUCH : error MT5210: Native linking failed, undefined symbol: _create_event. Please verify that all the necessary frameworks have been referenced and native libraries are properly linked in.
MTOUCH : error MT5210: Native linking failed, undefined symbol: _create_event_bool. Please verify that all the necessary frameworks have been referenced and native libraries are properly linked in.