Embarcadero Windows库和软件包

时间:2019-02-26 14:19:15

标签: opengl c++builder

这是我第一次使用Embarcadero RAD Studio(C ++,不是Delphi),尽管在其网站和Internet上进行了许多搜索,但我仍然对某些概念感到困惑。

到目前为止,我的目标是设置OpenGL核心配置文件并继续使用OGL(我已经熟悉)。对于其他IDE /编译器,我将添加opengl32库,并使用wglCreateContextAttribsARBglew

深入Embarcadero文件,我发现C:\Program Files (x86)\Embarcadero\Studio\20.0\lib\win32\release\psdk\opengl32.libC:\Program Files (x86)\Embarcadero\Studio\20.0\lib\win32c\release\psdk\opengl32.lib(注意win32之后的'c',那是什么?)和C:\Program Files (x86)\Embarcadero\Studio\20.0\lib\win64\release\psdk\opengl32.a

所以我想我可以只是“ Project-> Add to Project ...”库,而不是像许多年前看来从Windows系统中导入“ Import”。但是我很困惑,因为RAD可能会自己添加所需的库,至少对于控件而言,对吧?

但是我遇到了“ .pas”文件,该文件似乎可以加载任何需要的文件。实际上,C:\Program Files (x86)\Embarcadero\Studio\20.0\source\rtl\win\Winapi.OpenGLext.pas似乎足够,所以我可以避免使用glew。我的困惑是我不知道是否可以将“ .pas”文件(以及如何)用于VCL C ++,而不是Firemonkey,而不是Delphi。

我找不到wglCreateContextAttribsARB,也找不到设置Core Profile上下文的替代方法。

总结:

  1. 我需要添加系统库吗?怎么样?
  2. 如何使用“ .pas”文件?
  3. win32win32c dirs之间有什么区别?
  4. 如何设置OGL Core Profile上下文?我的意思是,我应该遵循检索指向的函数指针的路线吗 wglCreateContextAttribsARB还是RAD提供了另一种方法?
  5. RAD是否为C ++提供了替换问题的方法?

1 个答案:

答案 0 :(得分:1)

  

1。是否需要添加系统库?怎么样?

通常是。除非您使用的组件已完成添加库的操作。在Win32中,您必须使用#pragma link "opengl32.lib";在Win64中,您必须将#pragma link "opengl32.a"添加到您的cpp代码中。

  

2。如何使用“ .pas”文件?

您不需要将源目录中的文件添加到您的项目中。 Embarcadero非常好,可以在产品中包含其大多数组件的源代码。这样一来,您便可以了解其工作原理,并且如果需要更改某些行为,则可以创建一个从所需类派生的新类,并覆盖相关功能。通常,C ++ Builder允许将Pascal单位添加到C ++项目中,并且它将负责自动创建头文件。但您的情况则没有必要。

  

3。win32和win32c dirs有什么区别?

C ++构建器随附2个用于Windows的32位编译器。一个基于clang并支持C ++ 14,并且使用它编译的库位于win32目录中。另一个是经典编译器,使用它编译的库位于win32c目录中。除非您在项目设置中选中了“使用经典编译器”,否则您不必担心。

  

4。如何设置OGL Core Profile上下文?我的意思是,我应该遵循检索指向wglCreateContextAttribsARB的函数指针的路线   还是RAD提供了另一种方法?

我不知道RAD studio可能提供的任何组件。您应该搜索https://torry.net/http://www.delphipages.com/或更多存在的地方,以寻找有助于您所需的组件。

  

5。RAD是否为C ++提供了替换问题的方法?

什么是“ glew”?