代码:
#include <GLFW/glfw3.h>
int main() {
if(glfwInit()) {
}
return 0;
}
我链接了库(MinGW lib中的dll和.a文件)。我在MinGW / include / GLFW中有include头。这是编译器(eclipse控制台)输出:
Info: Internal Builder is used for build
g++ -o Test.exe "src\\Test.o" -lopengl32 -lglfw3
src\Test.o: In function 'main':
c:\Users\Bobby\Workspace\Test\Debug/../src/Test.cpp:11: undefined reference to 'glfwInit'
collect2.exe: error: ld returned 1 exit status
在发布之前我尝试了很多东西。
答案 0 :(得分:0)
如果您使用的是32位编译器(MinGW或32位版本的MinGW-w64),请确保您已下载适用于Windows的32位版本的GLFW3,并且正在使用lib-mingw
子目录。 64位版本的GLFW3仅适用于64位版本的MinGW-w64,这是一个独立于32位MinGW的项目。
请注意,您使用64位操作系统并不重要。如果您使用的是32位编译器,那么您需要32位库。
虽然这不是您遇到的问题,但我还应注意,32位版本的GLFW3 for Windows与MinGW并不完全兼容。静态库lib-mingw/libglfw3.a
依赖于MinGW-w64运行时,因此无法与MinGW正确链接。导入库lib-mingw/glfw3dll.a
及其关联的DLL lib-mingw/glfw3.dll
应该可以与MinGW一起使用。