【问题标题】:SDL2.0 with XCode 4.6SDL2.0 与 XCode 4.6
【发布时间】:2013-03-15 04:05:54
【问题描述】:

我已经成功构建了 SDL2.0,并构建了我的 SDL2.framework 文件夹。不知道我是否将它放在系统上的正确位置。我将 XCode 4.6 与 OS X 10.8 一起使用。我放在这里/System/Library/Frameworks

当我开始一个新的 XCode 项目时,我选择命令行应用程序。选择添加 OpenGL.framework 然后我尝试添加 SDL2.framework 但它没有出现在搜索列表中。然后我单击添加其他并手动选择位于/System/Library/Frameworks 的 SDL2.framework。然后我添加一些简单的 SDL 代码并尝试构建。然后我收到此错误:

SDL.h file not found

我可以在我的 XCode 项目中看到 SDL2.framework 在那里,我可以展开它以查看 SDL.h 存在,我什至可以打开它。

我在这里错过了什么?

【问题讨论】:

  • 如何在代码中包含 sdl.h?
  • #include "SDL.h"。应该不一样吗??
  • 检查 IDE 中包含文件的位置的设置。
  • 包含位置是否应该指向 SDL2.framework 所在的位置?
  • 不应该是#include <SDL.h>吗?这至少是我一直在做的,并且有效。

标签: xcode macos opengl sdl


【解决方案1】:

我通常将我的框架放在 /Library/Frameworks/ 中,但只要你正确链接它,你将它放在哪里。

如果您已将其正确添加到您的项目中,那么它应该不会导致问题。您可能还需要添加 Cocoa.framework,具体取决于您正在做什么。

包含 SDL2 的最便携方式是:

#include "SDL.h"

您只需要确保在 IDE 或 makefile 等中相应地配置了其他包含目录,以便列出 SDL.h 所在的文件夹。

【讨论】:

  • SDL FAQ 仍然说您应该像这样包含它:#include "SDL.h"。然后,您必须将包含路径设置为 …/include/SDL2
  • 似乎取决于平台,没有创建路径SDL2/。例如,在 MacOSX 中,框架不包含这个中间目录。在它存在的其他平台上,可能的解决方案是仅使用#import "SDL.h" 并在存在 SDL2 目录时修改标头搜索路径。
  • 谢谢,我一直认为 -framework 意味着您不必手动设置包含路径,但传递“-I /Library/Frameworks/SDL2/Headers”对我有用
  • 谢谢!当我将我的 SDL2 框架放在 /Library/Frameworks/ 中时,它对我有用,在构建阶段添加框架,并使用 #include 包含标题
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-01-27
  • 2013-04-21
  • 1970-01-01
  • 1970-01-01
  • 2013-03-02
相关资源
最近更新 更多