今天打包iOS工程的时候,XCode报了下面的错。
是因为原来的Unity工程的设置有问题,我们在新的SDK后,开了一个Unity分支,macOS在打开Unity工程的时候,Unity的BulidPlayerSetting里面的SDKVersion被勾选为5.1.1
clang: warning: libstdc++ is deprecated; move to libc++ with a minimum deployment target of iOS 7 [-Wdeprecated]
ld: library not found for -lcrt1.3.1.o
clang: error: linker command failed with exit code 1 (use -v to see invocation)
解决办法为:
- Build Phases -> Link Binary With Libraries
添加库:libc++.tbd。 - General -> Deployment Info -> Deployment Target
修改为ios7或者以上版本。
上述的解决方法通用,但是我这边遇到的问题是Unity工程,所以解决方法的第二步可以直接在Unity中设置解决。具体是在Unity的BuildPlayerSetting中的SDK Version选择7.0或者以上。
实际上带iOS7以下的操作系统 的设备已经非常少了,甚至于iOS8以下的设备都很少了。所以这里可以放心的选择为7.0以上。