I was following this tutorial. https://www.youtube.com/watch?v=j-55D2rsCSE @ 9:20 he gets the exact same errors I'm getting but then instead of explaining how to fix it he just cuts out the part where he solves it. He says "it was a quite simple error it was a linker library error". Well its not quite so simple for me, I've been trying to figure out what the heck to do for days now. Any help would be appreciated. Thanks guys.
-The most common is a function declaration but no definition.
-When you have everything #included, an unresolved external symbol is often a missing * or & in the declaration or definition of a function.
The video does not explain much if you have not watched it completely.
Do a Google search and you will surely find you type.
Ill go ahead and tell you, from what research ive done i think its because the linker doesnt know where to find the non standard library. (w/e the heck that means) or something like that. but no luck in finding how to fix that particular problem.
It means that you didn't link to the 'GLFW' library. This is a separate package from straight OpenGL that you download from here: http://www.glfw.org/download.html
I didn't watch the video and I won't watch it either because I that it will just make me angry. So I don't know how much he's told you to do so far, obviously not enough.
Sorry OP, I thought I'd have more time this weekend. Any who it turns out that this library does in fact have pre-compiled binaries for you, so that's nice because the make files all seem to favor versions of MingW. So go here: http://www.glfw.org/download.html and click on the button that says "64-bit Windows Binaries". The stuff you'll want to link to is in the folder labeled 'lib-vc2013'.
Hey man no problem. You dont owe me anything. Im just so glad for the help. So:
I downloaded the 64 bit binaries. Extracted "glfw-3.1.1.bin.WIN64" right to "C:\Users\User\Documents\Visual Studio 2013\Projects\Project3\Project3" next to my main.cpp.
I added "#include "glfw-3.1.1.bin.WIN64\include\GLFW\glfw3.h"" to the top of my main.cpp.
I went to "Project3 Property Pages -> Configuration Properties -> VC++ Directories -> Include Directories -> edit" and tried adding both "C:\Users\Aaron\Documents\Visual Studio 2013\Projects\Project3\Project3\glfw-3.1.1.bin.WIN64\include\GLFW" and "C:\Users\Aaron\Documents\Visual Studio 2013\Projects\Project3\Project3\glfw-3.1.1.bin.WIN64\include" because shadowCODE's instructions were not perfectly precise on this point.
I went to "Project3 Property Pages -> Configuration Properties -> VC++ Directories -> Library Directories" and tried adding all three of the options "C:\Users\User\Documents\Visual Studio 2013\Projects\Project3\Project3\glfw-3.1.1.bin.WIN64\lib-mingw" and "C:\Users\User\Documents\Visual Studio 2013\Projects\Project3\Project3\glfw-3.1.1.bin.WIN64\lib-vc2012" and "C:\Users\User\Documents\Visual Studio 2013\Projects\Project3\Project3\glfw-3.1.1.bin.WIN64\lib-vc2013". I suspect the last one is right but i tried it first and it didnt work so i tried all of them.
I went to "Project3 Property Pages -> Configuration Properties -> Linker -> Input -> Additional Dependencies" and tried adding "libglfw3.a" and "glfw3.lib" and "glfw3dll.lib".
I copied and pasted "C:\Users\User\Documents\Visual Studio 2013\Projects\Project3\Project3\glfw-3.1.1.bin.WIN64\lib-vc2013\glfw3.dll" to "C:\Users\User\Documents\Visual Studio 2013\Projects\Project3\Debug" where visual studio is building the project by default.
Obviously i didnt try all the complications at first. I made it simple and then tried all the extra stuff when simple didnt work. I tried to try all of the possible combinations of all of the things i described up there but im sure i missed some.
Ive tried programming and quit like a half dozen times now because i always run into this giant wall of difficulty that is compiling and using non standard libraries. I feel like if i can just scale this wall one time it might open the floodgates. I really do love programming its just so frustrating that i never seem to be able to get past the barrier of the difficulty of using third party libraries.
You'll only want to link to one of the libraries per instance and it will be one of them with the '.lib' suffix, since by convention those designate libraries compiled for MSVS where as a '.a' suffix is used for mingw. Usually there is one library for debugging and another for production, it's not immediately clear which one is which here. If I had to guess I would say the larger one is for debugging.
so it seems like the problem is probably with the last step from shadowCODE's instructions. its very confusing because first he tells me to add the directory of the dll's in my configuration properties and then to link the directory of the dll's in my configuration properties. Then he tell me to move them. Why would i add the directory and then link to the directory only to move the files 1 step later?
also where he says
Link the lib's *.lib files ... e.g.: library.lib
that is a bit confusing as well because my configuration properties only allows me to link to select the folder with the libs in it and not any lib specifically.
i could just move the dll's to the file where visual studio is building the executable but then the glfw header would be referencing the wrong directory wouldnt it? i mean surely the glfw header or its counterpart .cpp must be referencing the dll at some point, seems like i would surely break something if i just went and moved the dll.