64位系统上的OS X Carbon框架

Mic*_* IV 1 c++ opengl macos

我试图在Mac OS X Maverick上使用C++中的Carbon框架创建一个窗口.我需要它来设置AGL窗口OpenGL上下文.但我发现大多数相关的Carbon方法仅在x86模式下链接.例如在标题中对于'CreateNewWindow'方法,它清楚地说明:

可用性:*Mac OS X:版本10.0及更高版本的Carbon.framework [仅限32位]

所以我成功只在32位模式下编译它,这对我来说是无用的,因为我的目标是64位操作系统.64位的解决方法是什么?另外,我对使用Cocoa + ObjectiveC这样做不感兴趣.

use*_*321 5

如前所述,64位模式不再支持Carbon.您需要创建一个Cocoa应用程序.做你想做的最简单的方法是创建一个NSWindow包含NSOpenGLView.

此外,AGL已弃用.你从NSOpenGLViewa 获得的上下文将是一个CGLContext.

听起来你正试图让一些旧的代码工作.您还应该阅读OpenGL 3.3及更高版本.如果您使用的是与Carbon配合使用的OpenGL代码,则可能是OpenGL 1.2并使用了大量已弃用的功能.

  • Carbon 实际上仍然适用于 64 位应用程序,只是不是它的所有部分。特别是,任何与窗口相关的东西都不可用。 (2认同)