出现这个问题会特别蛋疼,明明存在该文件,但是一直报错。这里总结一下,希望对各位开发有用。
解决方法:
- 确认是否存在改文件,文件是否在拖进项目时是否勾选上Copy items if needed
- 在点击Target,选择项目,在Build Setting下面的Other Linker Flag 中添加 -all_load,这个是强制加载文件
- 在Build Setting 中找到Search Paths, 添加$(SRCROOT)/项目名称/存放该文件的文件夹,可以有多级文件目录,这个$(SRCROOT)是系统环境变量,类似PHP中FILE可以获得当前文件的文件的路径。
- 清除Xcode缓存,Xcode有缓存,可能会导致文件加进来的,但是找不文件。除了在通过Clean,还可以下面方方式来操作:找到位于 /User/用户名/Library/Developer/Xcode/DerivedData文件夹下面的所有文件情况,然后重启Xcode,注意不要删除DerivedData文件哦。
- 在Build Phases下面的Compile Sources里面检查一下你的文件存不存在,如果不存在就添加。这里需要说明一下,如果你的项目中出现Duplicate 文件.o保存,一般都是你重复引用文件,在Build Phases下面的Compile Sources 里面检查该文件,是否是重复,如果重复把重复的去掉。
技术交流群:344914307
网友评论