I am simply trying to get OpenGL working on my machine (Windows 7 64-bit) with GLFW.
I am getting the singular linker error:
undefined reference to 'glfwInit'.
The code I am trying to compile is the simplest possible (in a file Test.cpp).
#include <iostream>
#include <GLFW/glfw3.h>
int main()
{
std::cout << "hello world" << std::endl;
glfwInit();
return 0;
}
I am using a simple Makefile to attempt to compile:
Test: Test.o
g++ -o Test -L./lib -lglew32 -lglfw3 -lopengl32 -lglu32 -lgdi32 Test.o
Test.o: Test.cpp
g++ -I./include -c Test.cpp
Additional information:
- Using g++ to compile (MinGW32)
- The lib folder contains glfw3.dll, libglfw3.a, and libglfw3dll.a (Win32 version downloaded from GLFW website - Windows pre-compiled library)
- The include folder contains a folder named GLFW, which contains glfw3.h and glfw3native.h (from downloaded GLFW - include folder)
I have tried:
- Using the 64-bit version from GLFW
- Using IDEs (Eclipse, VS)
- The suggestion in GLFW Undefined References
- Suggestions in What is an undefined reference/unresolved external symbol error and how do I fix it? (swapping linking argument order)
- Suggestion in OpenGL with Eclipse CDT + MinGW + GLEW + GLFW: Undefined References
- Attempted to use CMake to compile the libraries myself, but do not see any .a, .lib, or .dll files created in the process.