Xcode: 无法解析调试地图,因为..是一个目录

14

我正试图链接我的 iPhone 模拟器项目,但在链接时出现以下错误:

(null): error: cannot parse the debug map for "/Users/admin/Library/Developer/Xcode/DerivedData/TrainTracks-agvvryrtufplkxecblncwedcelck/Build/Products/Debug-iphonesimulator/TrainTracks.app/TrainTracks": Is a directory

这是链接器输出:

GenerateDSYMFile /Users/admin/Library/Developer/Xcode/DerivedData/TrainTracks-agvvryrtufplkxecblncwedcelck/Build/Products/Debug-iphonesimulator/TrainTracks.app.dSYM /Users/admin/Library/Developer/Xcode/DerivedData/TrainTracks-agvvryrtufplkxecblncwedcelck/Build/Products/Debug-iphonesimulator/TrainTracks.app/TrainTracks
    cd /Work/TrainTracks/TrainTracks
    export PATH="/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Applications/Xcode.app/Contents/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin"
    /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/dsymutil /Users/admin/Library/Developer/Xcode/DerivedData/TrainTracks-agvvryrtufplkxecblncwedcelck/Build/Products/Debug-iphonesimulator/TrainTracks.app/TrainTracks -o /Users/admin/Library/Developer/Xcode/DerivedData/TrainTracks-agvvryrtufplkxecblncwedcelck/Build/Products/Debug-iphonesimulator/TrainTracks.app.dSYM

error: cannot parse the debug map for "/Users/admin/Library/Developer/Xcode/DerivedData/TrainTracks-agvvryrtufplkxecblncwedcelck/Build/Products/Debug-iphonesimulator/TrainTracks.app/TrainTracks": Is a directory

什么会导致这个问题?

我使用游戏模板(Xcode 7.2.1)开始,并且删除了主故事板和AppDelegate.*文件,因为这是一个SDL跨平台项目。

8个回答

12

这个问题是由于我的项目中包含了TrainTracks文件夹的第二次引用所导致的。我已经有了一个黄色的TrainTracks组,其中包含了所有的源代码,但出于某种原因,Xcode还显示了一个蓝色的TrackTracks文件夹。这个文件夹有一个重复的info.plist和其他文件。我删除了蓝色文件夹的引用,现在项目可以成功构建。


2
我在使用Pods,并重命名了应用程序。嵌入式Pod库仍留在项目中,导致应用程序无法构建。一旦我删除它,错误就消失了。 - Irfan

3
如果您使用CocoaPods,在更改Target名称后出现此错误,请点击目标,转到常规选项卡,向下滚动到“链接的框架和库”,然后删除以下库: libPods-YourOldTargetName.a

2

对我来说,这个错误是在项目中两次包含了同一个 .m 文件。发生在移动一些文件的过程中。退出 Xcode,清理并告诉我链接器错误的文件。


1
我在运行测试时遇到了这个问题,因为我的测试目标需要使用我在Podfile中的一个pod。为了解决这个问题,我只需将我的测试目标添加到Podfile中并按照以下模式包含相关的pods:
workspace 'myproject.xcworkspace'
platform :ios, '8.0'

use_frameworks!

def shared_pods
    pod 'RealmSwift', '~> 2.8'
end

project 'myproject.xcodeproj'

target :MyProject do
    project 'myproject.xcodeproj'
    shared_pods
end

target :MyProjectTests do
    project 'myproject.xcodeproj'
    shared_pods
end

1
在我的情况下,出现了同样的错误,因为应用程序中使用的一个框架是没有编译Bitcode的,所以我不得不关闭整个项目的Bitcode。

enter image description here


0
在我的情况下,我不得不删除整个存储库并重新克隆,没有其他方法可行,在进行全新的克隆后,我运行了pod install,然后它就可以工作了。

0
在我的情况下,我在查找器中复制了一个 .m 文件,以便作为参考,但不知何故(很可能是我的错误),它被添加到了项目资源管理器中。真正的错误是重复定义,因为该类出现了两次。删除“ClassNameHere_copy.m”解决了这个问题。

0
对我来说,这是因为我更改了目标名称,从而创建了一个新的CocoaPods .a库,但没有将其他库从链接中删除。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接