_fwrite$UNIX2003 解决办法

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

?
1
2
3
4
5
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中添加

?
1
2
3
4
5
6
7
8
9
10
extern "C" {
     size_t  fwrite $UNIX2003(  const  void  *a,  size_t  b,  size_t  c,  FILE  *d )
     {
         return  fwrite (a, b, c, d);
     }
     char strerror $UNIX2003(  int  errnum )
     {
         return  strerror (errnum);
     }
}

之前报错的问题已经解决了


你可能感兴趣的:(sdk,库)