ld: symbol(s) not found for architecture i386”错误的一般解决办法

missing required architecture i386 in file
Undefined symbols for architecture i386:
  "_OBJC_CLASS_$_OBLinear", referenced from:
  objc-class-ref in MyViewBarcode.o
ld: symbol(s) not found for architecture i386
collect2: ld returned 1 exit status 
今天碰到了类似与上述的错误,花了很多时间来解决这个问题,因此总结下:
类似上面的的错误,一般是库的问题,一般解决办法如下:
1、检查工程设置Search Paths里的Framework Search Paths、Header Search Paths、Library Search Paths的路径设置,看设置路径是否正确,另外还要注意里边是否多余一些不确定的路径,我就是因为设置里不知道怎么回事多了几条奇怪的路径导致Xcode报上述错误;结果,搞了我半天,真的是半天,时间完全浪费了。。。。。。
2、注意检查是否将库添加进工程里,添加的库分为模拟器、真机和混合版的
3、注意检查库跟前台的工程设置的Build Products Path和Intermediate Build Files Path项下的build文件路径要一致;
上述设置要工程设置跟target一起设置生效。

你可能感兴趣的:(not found,symbol)