高版本xcode编译了一个前几年的代码。。
其实并不是找不到,一通搜索我们可以发现,这个定义在这里:/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/ MacOSX10.11.sdk/usr/include/AssertMacros.h
然后发现Stackoverflow是第一生产力https://stackoverflow.com/a/46221365
简而言之就是新版本换名字了,并且他贴心的提供了优雅的兼容方式,找到一个issue:https://github.com/cebix/macemu/issues/141
也就是说,加参数编译-D__ASSERT_MACROS_DEFINE_VERSIONS_WITHOUT_UNDERSCORES
xcode在这里找:
XCode-点开Project,右边选对应的target,旁边会找到“Build Setting”,
点开All在Apple LLVM9.0 Preprocessor里有“Preprocessor Marcos”,或者直接搜索框搜“Preprocessor Marcos”,
然后把“__ASSERT_MACROS_DEFINE_VERSIONS_WITHOUT_UNDERSCORES”粘进去,再build 可以了!