64位系统上的OS X Carbon框架 [英] OS X Carbon framework on 64bit system
问题描述
我试图在Mac OS X Maverick上使用C ++中的Carbon框架创建一个窗口,我需要它来设置AGL窗口OpenGL上下文,但是我发现大多数相关的Carbon方法仅在x86模式下链接.在"CreateNewWindow"方法的标题中明确指出:
I am trying to create a window using Carbon framework in C++ on Mac OS X Maverick.I need it to setup AGL window OpenGL context.But what I found is that most of related Carbon methods link only in x86 mode.For example in the header for 'CreateNewWindow' method it is clearly stated :
可用性:* Mac OS X:10.0版和更高版本 Carbon.framework [仅32位]
Availability: * Mac OS X: in version 10.0 and later in Carbon.framework [32-bit only]
所以我只能在32位模式下成功编译它,因为我以64位操作系统为目标,这对我来说是没有用的.64位的解决方法是什么?另外,我对使用Cocoa + ObjectiveC的方式也不感兴趣.
So I succeed compiling it only in 32bit mode which is useless to me as I target 64bit OS.What's the workaround for 64bit? Also I am not interested in using Cocoa + ObjectiveC way of doing it.
推荐答案
如上所述,64位模式不再支持Carbon.您需要创建一个Cocoa应用程序.执行所需操作的最简单方法是创建一个包含NSOpenGLView
.
As mentioned, Carbon is no longer supported in 64-bit mode. You need to create a Cocoa app. The easiest way to do what you want is to create an NSWindow
containing an NSOpenGLView
.
此外,不推荐使用AGL.从NSOpenGLView
获得的上下文将是CGLContext
.
Also, AGL is deprecated. The context you get from an NSOpenGLView
will be a CGLContext
.
听起来您正在尝试使一些旧代码起作用.您还应该阅读OpenGL 3.3及更高版本.如果您使用的是与Carbon一起使用的OpenGL代码,则可能是OpenGL 1.2并使用了许多不推荐使用的功能.
这篇关于64位系统上的OS X Carbon框架的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!