这是什么意思:架构的未定义符号x86_64“_main”

时间:2014-10-18 05:31:11

标签: xcode macos swift

我在Xcode上构建应用程序时遇到错误:

Undefined symbols for architecture x86_64:
  "_main", referenced from:
    implicit entry/start for main executable
ld: symbol(s) not found for architecture x86_64

我的代码都没有错误,错误是奇怪的错误,我做的任何事情都无法解决。我不认为代码与问题相关,因为它没有在错误中引用。

这是错误的屏幕截图。enter image description here

3 个答案:

答案 0 :(得分:14)

链接器无法在主swift入口点的链接过程中找到任何文件。这可能是由于项目中根本不存在该文件,或者它存在但尚未包含在编译或链接构建阶段中。

在Swift中,主要的swift入口点在main.swift模块中定义,或者(对于iOS)AppDelegate.swift文件中需要@UIApplicationMain声明。我没有在您的日志中看到Compile main.swift,可能是遗失或未包含在构建阶段中?

答案 1 :(得分:2)

以防万一,检查文件检查器上是否选择了AppDelegate应用目标。

(选择AppDeletage>显示Utility>在file Inspector下显示Target Membership>,选择目标。)

重命名现有文件后发生在我身上。

答案 2 :(得分:0)

有时会从项目中删除AppDelegate.swift的引用,并在项目中再次添加AppDelegate.swift。