IOS如何解决烦人的“clang: error: linker command failed with exit code 1 (use -v to see invocation)”问题

来源:互联网 发布:金百福珠宝软件试用版 编辑:程序博客网 时间:2024/05/20 19:32

首先来看错误,错误的基本模式如下:


//这前面还有一大堆错误信息

ld: file not found: /Users/xx/Library/Developer/Xcode/DerivedData/Build/Products/Debug-iphonesimulator/XXXX.app/XXXX

clang: error: linker command failed with exit code 1 (use -v to see invocation)


遇到这类错误最让人头疼了,打印出来的错误信息是一大堆的路径,在错误信息里面找了半天没看到有用的错误信息,我也碰到过这类问题,一度让我伤透了脑筋。一顿抓耳挠腮后我有幸把这个问题解决了,下面跟大家分享一下我的经验!

1.首先注意看“file not found:”后面的信息,有一类是会在这句话后面标出一些你缺失的类或者缺失的文件等的信息的,这类问题也是比较好解决的,大多数情况下都是开发者为了省事,直接把一些类库文件拖进工程里面导致的。
要解决这类问题的具体做法是:找到缺失的文件,最好删除原有的再去重新导入,然后在下图的这个地方看看,有没有出现你添加的类的.m文件,如果没有就手动添加一下。



2.当然,你也可能遇到的是上面我列出的错误的情况,即“ld: file not found: /Users/xx/Library/Developer/Xcode/DerivedData/Build/Products/Debug-iphonesimulator/XXXX.app/XXXX”这种错误,下面来说说解决这种错误的方案:
1>首先去查看你product name,这类问题可能是改名后出现的--------->Build Setting-------->Product Name

2>确保项目中的Build Settings分栏下Packaging中的Private Headers Folder Path路径和Product Module Name一致,如果不一致请修改为相同的项目名称,如下图。


3>如果还没解决你的问题,那么再来看这种情况,在X-code菜单栏中Product-------->Scheme------->Manager Schemes....
进入该页面之后,点击页面右下角的"+"号,新建一个schemes,就OK了。

当然,还可能有很多其他的情况,以上三种是我个人在开发中总结的经验,希望对各位能有帮助!









0 0
原创粉丝点击