ios报错:ld: library not found for -lcrt1.3.1.o

今天打包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)

解决办法为:

  1. Build Phases -> Link Binary With Libraries
    添加库:libc++.tbd。
  2. General -> Deployment Info -> Deployment Target
    修改为ios7或者以上版本。 

上述的解决方法通用,但是我这边遇到的问题是Unity工程,所以解决方法的第二步可以直接在Unity中设置解决。具体是在Unity的BuildPlayerSetting中的SDK Version选择7.0或者以上。

实际上带iOS7以下的操作系统 的设备已经非常少了,甚至于iOS8以下的设备都很少了。所以这里可以放心的选择为7.0以上。

你可能感兴趣的:(IOS,Unity开发)