最近使用cocoapods管理项目时候,一只报出symbol(s) not found for architecture armv7然后找不到pods里面的一些库。
解决办法:
1.
Build Setting
Build Active Architecture Only 设置为NO
这个属性设置为yes,是为了debug的时候编译速度更快,它只编译当前的architecture版本。
而设置为no时,会编译所有的版本。
这个是设备对应的architecture:
armv6:iPhone 2G/3G,iPod 1G/2G
armv7:iPhone 3GS/4/4s,iPod 3G/4G,iPad 1G/2G/3G
armv7s:iPhone5, iPod5
arm64:iPhone5s,ipad air,ipad mini2
编译出的版本是向下兼容的,比如你设置此值为yes,用iphone4编译出来的是armv7版本的,iphone5也可以运行,但是armv6的设备就不能运行。
所以,一般debug的时候可以选择设置为yes,release的时候要改为no,以适应不同设备。
通过对以上参数配置的了解,我解决了问题。
2.
解决方法如下:~/Library/Developer/Xcode/DerivedData 关掉xcode,删掉DerivedData这个文件夹里的全部东西 然后重新打开项目clean>build。用于清空缓存数据
xcode-prefrence-location
3.
pruduct - scheme - edit scheme - build - add pods里面的lib库