【发布时间】:2013-09-11 11:56:09
【问题描述】:
我正在尝试使用 GLFW 作为静态库来编译程序。我确信我已经正确链接了所有内容,因为其他 GLFW 函数不会引发任何错误。这些只是使用 GLFWwindow* 作为参数的函数。 例如:
glfwMakeContextCurrent(window); //window is a pointer of type GLFWwindow
错误: 无效参数'候选者是:void glfwMakeContextCurrent(*)'
这会给我一个错误。参数窗口无效。 其他期望指向 GLFWwindow 的函数也会抛出错误。 但其余的,没有 GLFWwindow* 作为预期参数的函数编译并工作得很好。
我正在使用 MinGW32、Eclipse CDT、Win7。 (我确定我使用的是 32 位 GLFW)
可能是什么原因,为什么他不接受我的指针?
P.S.: eclipse 编译 glfwMakeContextCurrent(0);并作为提示,当我将错误线悬停时,它会显示 glfwMakeContextCurrent(*);
【问题讨论】:
-
你真的试过编译你的代码吗?这看起来像是来自 Eclipse,而不是编译器的消息。
-
原来,链接静态库会引发一些未定义的引用(它们是在我删除 GLEW 链接后显示的)。现在我正在使用 glfw 的 dll 版本,没有任何错误。 mingw/g++ 也没有抱怨任何事情。但是错误“无效参数”仍然存在......也许这是Eclipse的一个错误。我将尝试运行带有此“错误”的程序并稍后再发布...
标签: c++ eclipse opengl mingw glfw