你的位置:首页 > 操作系统

[操作系统]常见ios问题(实时更新)


1、错误代码:No architectures to compile for (ONLY_ACTIVE_ARCH=YES, active arch=x86_64, VALID_ARCHS=armv7 armv7s)

build 这个target的时候命令行报错。可以在 build setting 中,搜索bitcode,并吧 enable bitcode 设置为 NO.

2、ld:framework not found IOKit

终端输入以下2行内容:

cd /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.1.sdk/System/Library/Frameworks/IOKit.framework 

sudo ln -s Versions/A/IOKit .

其中,如果不行,从文件夹中慢慢打开看下路径对不对,如果像有修改Xcode名称的,注意如 “xcode 5”  [有空格" “的记得在终端中加上 “\”这个符号];

 

3、程序没问题,运行报错:Directory not empty

位于/Users/你电脑名/Library/Developer/Xcode/DerivedData  下的缓存文件占很大的缓存空间,如果长时间不删除xcode下的缓存文件,就会导致硬盘空间越来越小直到Directory not empty。删除了缓存文件再运行就不会再报错。

或者,直接clean一次就可以了。

 

4.mac内存不够。。。如何解决:

模拟器的目录在这里:

/Users/你当前登陆的用户名/Library/Application Support/iPhone Simulator/

你的App被XCode Build在这里:

/Users/你当前登陆的用户名/Library/Developer/Xcode/DerivedData/YOURPROJECTNAME_SOMETHINGSOMETHING/Build/Products 把不需要的app项目删除。或者定时删除旧的项目。

 

5、如果遇到编译错误类似:Undefined symbols for architecture armv7: 

"_OBJC_CLASS_$_ASIHTTPRequest",先检查上述的依赖代码是否已加入编译列表,如未加入,依次点击Target->Build Phases->Compile Sources,点击底部“+”添加上述代码。 

如果遇到编译错误类似:Undefined symbols for architecture armv7:   "_inflateEnd", referenced from,则应该是缺少依赖libz.dylib,添加方法:依次点击Target->Build Phases->Compile Sources,点击底部“+”,在弹出的列表中输入libz,添加搜索结果中最新版本即可。 

6、问题: ld/ warning/ directory not found for option

 

从项目中删除了某个目录、文件以后,编译出现警告信息: 

ld: warning: directory not found for option“XXXXXX”

有时候已经从项目中删除了文件和文件夹还是报这个警告,虽然没有发生错误,但是看着很不舒服。。

去掉警告的办法如下:

1选择工程, 编译的 (targets)

2选择 Build Settings 菜单

3如下查找 Library Search Paths 和 Framework Search Paths, 删掉编译报warning的路径即OK。