SDL.framework和Xcode不是很好玩

时间:2012-04-12 15:52:25

标签: xcode macos frameworks sdl

我正在使用SDL在Mac OS X上构建游戏。然而,SDL.framework表现出特殊的行为。

如果/ Library / Frameworks以及应用程序包中存在SDL.framework,GDB会吐出以下内容:

  

objc [40787]:类SDLTranslatorResponder在/ Users / Hinchy / Library / Developer / Xcode / DerivedData / Here_Comes_Launchman-abjymmujvjzdemcsrkkcmonahuva / Build / Products / Debug / Here Comes Launchman.app/Contents/MacOS/../中实现框架/ SDL.framework / Versions / A / SDL和/Library/Frameworks/SDL.framework/Versions/A/SDL。将使用两者之一。哪一个未定义。   objc [40787]:类SDL_QuartzWindow在/ Users / Hinchy / Library / Developer / Xcode / DerivedData / Here_Comes_Launchman-abjymmujvjzdemcsrkkcmonahuva / Build / Products / Debug / Here Comes Launchman.app/Contents/MacOS/../Frameworks/SDL中实现.framework / Versions / A / SDL和/Library/Frameworks/SDL.framework/Versions/A/SDL。将使用两者之一。哪一个未定义。   objc [40787]:类SDL_QuartzWindowDelegate在/ Users / Hinchy / Library / Developer / Xcode / DerivedData / Here_Comes_Launchman-abjymmujvjzdemcsrkkcmonahuva / Build / Products / Debug / Here Comes Launchman.app/Contents/MacOS/../Frameworks/SDL中实现.framework / Versions / A / SDL和/Library/Frameworks/SDL.framework/Versions/A/SDL。将使用两者之一。哪一个未定义。   objc [40787]:类SDL_QuartzView在/ Users / Hinchy / Library / Developer / Xcode / DerivedData / Here_Comes_Launchman-abjymmujvjzdemcsrkkcmonahuva / Build / Products / Debug / Here Comes Launchman.app/Contents/MacOS/../Frameworks/SDL中实现.framework / Versions / A / SDL和/Library/Frameworks/SDL.framework/Versions/A/SDL。将使用两者之一。哪一个未定义。

然后游戏在第一个SDL_PollEvent处使用EXC_BAD_ACCESS符号继续崩溃。

如果SDL.framework仅存在于应用程序包中(或根本不存在),则游戏完全拒绝启动。

如果SDL.framework仅存在于/ Library / Frameworks中,则游戏运行时没有问题。

适用于SDL.framework,而不适用于我在项目中使用的其他SDL衍生产品(SDL_image,SDL_mixer等)。

1 个答案:

答案 0 :(得分:0)

看看这篇文章: Embedding frameworks in a Mac App Bundle

更改

  

Runpath搜索路径"将设置设置为" @loader_path /../ Frameworks"

建议从我的输出中删除该消息,并允许它在我的/ Library / Frameworks文件夹中没有SDL.framework的情况下运行。