mingw32 以及自帶的 msys 用着挺舒服的。可是很久都沒有更新了,gcc 編譯器仍是 4.x 。上次編譯 assimp 不過,錯誤消息是 obj 文件太大。搜索了一下仍是決定用新版本的 gcc 。並且如今都是用 64 位的 windows,我也想用 64 位編譯器,因此決定用 cygwin 了,並且還在不斷的更新。html
安裝完 cygwin64 開始編譯 opengl 程序,竟然編譯不過,錯誤消息也很微妙。這個時候我看了 GL 的頭文件是位於 cygwin64/usr/include/w32api/GL
這個目錄下,而 cygwin 是徹底模擬 Unix 平臺,所以應該從新安裝相關的包。我以在 cygwin64 編譯 glfw 爲例來指明要安裝的東西。首先就是要安裝 X Window ,參考這裏安裝。下面是一些要安裝的包。安裝完後就會發現另外有一個 GL 目錄,這個目錄的頭文件就能夠直接使用了。git
xorg-servergithub
xinitwindows
xorg-docsapi
xlaunchbash
libX11-devel for Xlib.h Xutil.h Xmd.hcode
libXrandr-devel 編譯 glfw 須要server
libXinerama-devel 編譯 glfw 須要htm
libXcursor-devel 編譯 glfw 須要get
libGL-devel for OpenGL
libEGL-devel for OpenGL ES
libGLU-devel for GLU
mesa-demos for glxinfo
發現沒,要安裝這麼多東西,並且比較蛋疼的是運行也很蛋疼。由於不用 Windows 本地的 GL 就得用 mesa 可是這個版本很老了。總之很方便。我終於明白爲何好多人用的 mingw 沒有用 cygwin 。因爲 cygwin 徹底移植到 Windows 上,真的太臃腫了。
後來我想用 mingw64 ,而後發現了 msys2 。真的很贊。而後就愛上了 msys2 ,並且上面的軟件包很新。贊贊贊。
更新 msys2 軟件包 pacman --needed -Sy bash pacman pacman-mirrors msys2-runtime 更新其餘軟件包 pacman -Su pacman -Sl | grep gcc pacman -S mingw-w64-x86_64-gcc pacman -S mingw-w64-x86_64-cmake pacman -S mingw-w64-x86_64-make pacman -Sl | grep glew pacman -S mingw-w64-x86_64-glew pacman -Sl | grep glfw pacman -S mingw-w64-x86_64-glfw pacman -Sl | grep freeglut pacman -S mingw-w64-x86_64-freeglut
裝完這些我就能夠開心的擼 OpengGL 了。推薦大家。注意,把 cmake 和 make 一塊兒安裝,我單獨裝 make 不能正確執行,提示找不到一個動態庫。