XCode 4.3.2 SDLMain.o 中的 SDL 未定义符号

Posted

技术标签:

【中文标题】XCode 4.3.2 SDLMain.o 中的 SDL 未定义符号【英文标题】:SDL in XCode 4.3.2 SDLMain.o undefined symbols 【发布时间】:2012-06-17 10:20:09 【问题描述】:

我已经开始尝试在 Xcode 4.3.2 中使用 SDL,所以我为 Mac OS X 启动了一个 Cocoa 应用程序并连接了我所有的框架:OpenGL、SDL 等。我没有 SDL_Image、SDL_Mixer 等。(我需要这些吗?)当我尝试编译只有 SDLmain.h 和 SDLmain.m 的项目时,我收到此错误:

Undefined symbols for architecture x86_64: "_SDL_main", referenced from: -[SDLMain applicationDidFinishLaunching:] in SDLMain.o ld: symbol(s) not found for architecture x86_64 clang: error: linker command failed with exit code 1 (use -v to see invocation)

【问题讨论】:

【参考方案1】:

我在 Xcode 4.5 和 OS X 10.7 上遇到了与 SDL 1.2.15 相同的问题,原来问题是我添加了 SDLMain.mSDLMain.h(根据 libSDL 网站上关于 OS X 框架的建议) 到与main 混淆的现有 SDL 项目。最重要的是,您不需要这些文件只是因为您使用的是 Cocoa - SDL 自己的测试应用程序也不使用它,并且在 OS X 上运行良好。

【讨论】:

以上是关于XCode 4.3.2 SDLMain.o 中的 SDL 未定义符号的主要内容,如果未能解决你的问题,请参考以下文章

如何将框架添加到 Xcode 4.3.2 上的项目 [重复]

iOS 5 XCODE 4.3.2 故事板。如何在现有表视图之前插入新视图?

xcode 4.3.2 进程挂起

Xcode 4.3.2 上的 uipopover 冻结问题

Xcode 4.3.2 安装在哪里?

xcode 4.3.2 codeSense 问题