我只是在之前的工作版本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项目编译和链接就好了。 有关修复重复对象的其他想法吗?
答案 0 :(得分:1)
我得到同样的错误。对我来说,它就像删除框架并重新安装一样简单。不太确定为什么要修复它,但我的猜测是Xcode在两个不同的地方寻找相同的框架,所以通过删除并添加它,它解决了问题。
答案 1 :(得分:0)
好的,我有两个类,每个类都有一个具有相同名称的实例对象。碰巧,这个对象是一个单身人士。我假设实例对象的范围是互斥的,事实上它在Xcode7中运行良好,但在8中没有。谁知道?通过重命名其中一个实例变量
来修复