现在的位置: 首页 > 综合 > 正文

iOS下Symbol not found: ___sincosf_stret错误

2017年12月13日 ⁄ 综合 ⁄ 共 598字 ⁄ 字号 评论关闭

      在调试一个带第三方库的多媒体应用中,发现在iOS6.1.2的版本上必然crash,显示Symbol not found: ___sincosf_stret错误,这个错误很少见。

      

      

      如上图所示,从提示上看,是在延迟绑定符号表时出错了,没有找到___sincosf_stret,然后很贴心的提示了libSystem.B.dylib这个动态库,因为确实没有加入libSystem.B.dylib这个动态库,第一反应就是加入这个动态库。编译运行,没有丝毫变化。

      仔细一想,确实没有道理,这个提示有点莫名其妙,于是上网搜索了一下,发现有人在iOS上用openCV,也遇到了类似的问题,有人回贴说更换command line tool,死马当活马医试了一下,问题照旧。但这个帖子是比较旧,当时xcode5刚刚出来,还是dp版本的时候的事情,主要原因不是编译器的选项,而是第三方的库的兼容,这给了我一个思路,会不会我也是第三方库的兼容问题?

      然后我尝试了运行在iOS7上,果然,运行就正常了,这就说明确实和SDK有关系,因为第三方的库是基于7.1的SDK编译出来的。

      遇到的这个问题,原因是因为要deploy在iOS7上的target错误的deploy在更低的版本上了,更新第三方库后就解决了问题


       调试中遇到稀奇古怪的问题是要多观察,仔细分析,也需要多看看其他人的做法。

      

抱歉!评论已关闭.