当我尝试使用glewInit()运行我的多项目解决方案时,它关闭了。不过,该项目本身构建得很好。当我注释掉这一行时,解决方案就可以运行了。
我正在写一个项目,它是Visual Studios 2010中一个大型解决方案的一部分。该项目使用名为coin3d的第三方图形库。我已经下载并安装/包含了glew,并且没有链接问题,因为这个项目将构建得很好,没有任何错误。此项目没有入口点,它生成的dll仅供解决方案使用。因此,我无法查看有关它的任何特定的运行时错误日志。它只是在失败时告诉我它找不到项目的dll。
我知道第三方图形库创建了opengl上下文,因为我可以使用常规的opengl在屏幕上渲染一些几何图形和其他东西。但是一旦我运行glewInit(),项目就无法运行(即使它已经构建好了)。是否有一种方法可以检查和打印上下文是否已创建?(只是为了确认)
GLEW的网站上写着:
"On Windows, you also need to define the GLEW_STATIC preprocessor token when
building a static library or executable, and the GLEW_BUILD preprocessor
token when building a dll"这是否意味着将它们像这样放入项目的预处理器定义中?

我试着让它只在GLEW_BUILD上运行,而不是在GLEW_STATIC上运行。这并没有什么不同。我是不是遗漏了什么步骤?
发布于 2013-04-28 00:35:41
有没有办法检查和打印上下文是否已经创建?(只是为了确认)
您可以执行以下操作:
if (glewInit() != GLEW_OK)
{
fprintf(stderr, "Failed to initialize GLEW\n");
return -1;
}https://stackoverflow.com/questions/15725117
复制相似问题