Xcode 8错误:无法解析调试映射:没有这样的文件或目录

时间:2016-09-14 13:49:15

标签: linker-errors xcode8

我只是在之前的工作版本7上安装了新的Xcode 8。 我尝试构建一个现有的ObjC应用程序,并获得了持久的链接器错误:

 error: cannot parse the debug map for "/Users/--- 
 Library/Developer/Xcode/DerivedData/Sunset3-
 dejxrzrmfgomxxcrzloplmsozads/Build/Products/Debug-
 iphonesimulator/Sunset3.app/Sunset3": No such file or directory

搜索,以前的修补程序在这里不起作用:

1) Reboot after install
2) Xcode Clean Project
3) Turn off bitcode build options
4) for good measure, I tried targeting into 9.0, 9.3, 10.0 - no difference in outcome
5) Also tried three different simulator targets

对日志的进一步评估显示了一个未被前一个IDE标记的dup对象:

duplicate symbol _sharedPlaceDate in:
/Users/irampil/Library/Developer/Xcode/DerivedData/Sunset3-dejxrzrmfgomxxcrzloplmsozads/Build/Intermediates/Sunset3.build/Debug-iphonesimulator/Sunset3.build/Objects-normal/x86_64/ViewController.o
/Users/irampil/Library/Developer/Xcode/DerivedData/Sunset3-dejxrzrmfgomxxcrzloplmsozads/Build/Intermediates/Sunset3.build/Debug-iphonesimulator/Sunset3.build/Objects-normal/x86_64/GraphClass.o
     

ld:1个用于体系结构x86_64的重复符号   clang:错误:链接器命令失败,退出代码为1(使用-v查看调用)

在XCode8中创建的de novo ObjC项目编译和链接就好了。 有关修复重复对象的其他想法吗?

2 个答案:

答案 0 :(得分:1)

我得到同样的错误。对我来说,它就像删除框架并重新安装一样简单。不太确定为什么要修复它,但我的猜测是Xcode在两个不同的地方寻找相同的框架,所以通过删除并添加它,它解决了问题。

答案 1 :(得分:0)

好的,我有两个类,每个类都有一个具有相同名称的实例对象。碰巧,这个对象是一个单身人士。我假设实例对象的范围是互斥的,事实上它在Xcode7中运行良好,但在8中没有。谁知道?通过重命名其中一个实例变量

来修复