_fwrite$UNIX2003 解决办法

今天更新环信SDK时碰到这个样的一个问题

Undefined symbols for architecture i386:
  "_fwrite$UNIX2003", referenced from:
      _hex_dump_internal in libEaseMobClientSDK.a(dump.o)
      _pkt_dump_internal in libEaseMobClientSDK.a(dump.o)
ld: symbol(s) not found for architecture i386

查了网上N多知了(吐槽一下ziliao都不让发),咨询了各路大神终于找到了解决方法

虽然不是很懂为什么但能解决问题,我就分享一下

在AppDelegate.mm中添加

extern"C"{
    size_t fwrite$UNIX2003( constvoid *a, size_t b, size_t c, FILE *d )
    {
        return fwrite(a, b, c, d);
    }
    char* strerror$UNIX2003( int errnum )
    {
        return strerror(errnum);
    }
}

不知道为什么这样能解决,元芳你怎么看


你可能感兴趣的:(_fwrite$UNIX2003 解决办法)