_fwrite$UNIX2003 解決辦法

今天更新環信SDK時碰到這個樣的一個問題code

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都不讓發),諮詢了各路大神終於找到了解決方法xml

雖然不是很懂爲何但能解決問題,我就分享一下it

在AppDelegate.mm中添加class

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);
    }
}

以前報錯的問題已經解決了
方法

相關文章
相關標籤/搜索