2012-05-10 28 views
1

我正在开发一些游戏代码,它在Windows和Mac上都能正常工作。声音也很完美。我使用OpenAL。我的OpenAL框架坏了,我该如何解决它? (OSX Lion)

最近我从Creative Labs安装了OpenAL OSX安装程序。它覆盖了我原来的Apple OpenAL框架,现在我的项目不再编译了(链接器错误,错误的架构和类似的东西)。

真正的问题是:我可以修复它吗?我可以找到原来的Apple OpenAL框架来替换我的系统上的吗?如果没有,有人会如此友善地向我发送这些文件,以便将它们还原(如果可能的话)?

+0

您是否尝试过重新安装XCode? –

+0

@ MahmoudAl-Qudsi:刚刚尝试过,正如我怀疑的那样,这并不能解决问题。我认为SDK与OS不一起安装在XCode中。 – scippie

+0

(有人可以告诉我我的问题有什么问题,以便它应该得到-1分) – scippie

回答

1

除了重新安装完整的操作系统(我重新安装了狮子升级程序,我重新安装了xcode,手动删除了东西,...)之后,我发现被创意安装程序覆盖的框架是唯一的位于/ Library/Frameworks中,而不是/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.7.sdk/System/Library/Frameworks

我以为他们被符号链接,但它们不是。所以我只是将10.7sdk中的一个复制到/ Library/Frameworks中的一个,并且所有东西都重新生成了!

最奇怪的是,如果在我的项目中,我右键单击“链接框架和库”列表中的OpenAL框架,并选择“在Finder中显示”,我确实重定向到了sdk,但xcode似乎并没有使用它,因为当我从/ Library/Frameworks中删除OpenAL.framework时,xcode显示框架为红色,并且不会构建。所以xcode告诉我它使用sdk文件夹中的一个,但实际上使用/ Library/Frameworks中的一个。

我已阅读过其他论坛(关于其他平台,如iPhone和东西),人们有这方面的问题。 XCode告诉他们他们正在使用iPhone SDK中的框架,但实际上他们正在使用/ Library/Frameworks中的框架。

所以这一定是xcode中的一个bug。

无论如何...解决!

+0

感谢您的修复。当编译为10.7时,Cocos2D/Kobold2D也存在这个问题,所以我将框架从SDK复制到库中,而Cocos/Kobold现在工作得很好。我可能已经打破了另一个应用程序,所以我保存了原始副本,但这是另一个问题。再次感谢! – alexanderpine

0

将框架添加到您的项目中。您正在编译文件以便编译,但您必须指定要链接的文件。它在/ System/Library/Frameworks /中。

相关问题