taiyang2014

XCode中常用错误解决

No such file or directory
    解决方法(可以依次尝试,总有一种能最终解决问题):
    
    方法1.退出Xcode,然后从finder里面进入~/Library/Developer/Xcode/DerivedData 删掉里面所有的内容,然后重启Xcode试试看
    
    
    方法2.上面的操作也可以直接在Xcodeorganizer中完成,在organizer里面切换到projects,然后deletederived data
   
    target设置中删掉Prefix Header的值,重启Xcode试试看    
    最后恢复Prefix Header的设置
    
    方法3
    
    还是在Xcode里面
    
    项目-targets-build phases
    
    然后从copy bundle resources里面删掉红色的错误资源文件

No such file or directory
问题描述
 Undefined symbols for architecture i386:
“_OBJC_CLASS_$_XXX”, referenced from:
objc-class-ref in XXX
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)
当拷贝文件到工程里的时候,若不注意勾选"Add to Target",运行时会报如下类似的错误
    解决方法:
    先点击方案(左边列表,点击方案的图示)
    选择target
    选择页签Build Phases
    Compile Source
    如果没展开的话先展开
    向下找加号,点击加号,将这个target需要的.m档案的头文件都加入
   (如果只有一个 就把左右的.h档案都加入)


Undefined symbols for architecture armv7s

 armv7sIOS框架指令集,下面列举了IOS的硬件适配对应关系:
   armv6iPhone 2G/3GiPod 1G/2G
   armv7iPhone 3GS/4/4siPod 3G/4GiPad 1G/2G/3G
   armv7siPhone5

    一般真机测试时,如果报armv7s错误,一般都是因为armv7s指令集是打开的,而之前一些引用库都是使用armv7s之前的指令集编译的(当这些引用的外部库使用armv7s指令集编译后,就不会出现该问题)
   解决办法如下1,2都可以:
   1,[去掉armv7s指令集支持]xcode-->"Build Settings"-->"Valid Architectures"中把armv7s去掉(可能使程序无法适配iPhone5)
   2,[兼容armv7s]PROJECT-Build Setting,然后把Build Active Architecture Only的值设置为Yes


 

posted on 2015-01-16 22:44  taiyang2014  阅读(403)  评论(0编辑  收藏  举报

导航