Objective C:“_ main”,引自:crt1.3.1.o中的错误

时间:2010-04-15 05:52:43

标签: iphone objective-c xcode ipad

尝试使用SDK3.2编译iPhone / iPad应用程序并收到此错误:

Undefined symbols:
"_main", referenced from:
Start in crt1.10.5.o
Symbol(s) not found
Collect2: Id returned 1 exit status

我认为它告诉我,它试图使用其他SDK的代码,但搜索网络没有提供任何明确的答案。

任何人都可以指导我这个以及寻找什么?

3 个答案:

答案 0 :(得分:8)

看起来就像你没有在任何源文件中提供main函数一样。 crt目标文件很可能是设置环境然后调用main的启动代码(CRT通常代表C运行时,当它不用于表示阴极射线管时,它不应该更多,这是死技术和所有)。

Undefined symbols: "_main" ...只是意味着链接器发现crt1.10.5.o需要满足_main符号,并且所提供的文件都不满足它。

没有看到实际的链接器命令行,我们无法确定所包含的内容。您应该检查源代码并确认或否认main()的存在?它是否包含在构建中?

答案 1 :(得分:5)

似乎有几种可能的原因。

选中执行单对象预链接构建选项后,我遇到了此问题 (GENERATE_MASTER_OBJECT_FILE = YES)。

答案 2 :(得分:0)

当我在Xcode 5中打开一个Swift项目时,我得到了这个。当我在Xcode 6中打开它时,它工作正常。