2012年11月25日 星期日

OpenGL - Environment setting 環境設定

11/24 Day2

安裝環境

找了很多網路上面的教學 還是官方比較好 雖然他講的很籠統= =
http://glew.sourceforge.net/install.html

GL RENDERER = GeForce GT 240/PCIe/SSE2
GL VENDOR = NVIDIA Corporation
GL VERSION = 3.3.0
GLSL's Version = 3.30 NVIDIA via Cg compiler

以上為我電腦的環境資料;Coding IDE使用M$ Visual Studio 2010

*在安裝環境之前有先從Nvidia官網下載 update GPU driver。

方法:

 [首先放lib檔]

1. 下載 freeglut , glew32 binary 檔 (都是要32 bit)

2. 將兩個的bin files放在:

        a. C:\Windows\SysWOW64

        b. %PROGRAMFILES(X86)\VX.X(版本)\lib 兩個中

  /*IMPORTANT : 32bit 的 freeglut.dll 放在SysWOW64中,64版的不行!!!!!!!! */

3. 將兩個的.h 標頭檔放在:

        %PROGRAMFILES(X86)\VX.X\Include\gl 中


這樣所需檔案就放好了,接下來改設定VS2010的環境


----------------------------------------------------------------------------------------------------

[VS2010 Project Properties] 
 以下都在改project的屬性                //不確定的步驟我打上*號

4. VC++ Directories -> Library Directories 增加上

        C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Lib\glew32.lib

        *和C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Lib\
          (這個Macro應該預設就有

*5. /* IMPORTANT!!! */ 11/25補 ((後來編譯發現這步驟不用做= =
   在C/C++ -> Preprocessor -> Preprocessor Definition裡加上

        "GLEW_BUILD" !!!! ((這步驟官網講得頗籠統 還有若是include glew.c file則要加"GLEW_STATIC"

6. linker -> input -> additional dependencies 加上 "glew32.lib freeglut.lib"

 (linker -> general -> show progress 選 display all configurations 可以在compile時於output看到有沒有連到library)

[Include GLM and GLFW
/*GLM (Mathematics) is a header on C++, as an extension of GLSL, */

GLMGLFW相對於上面兩套lib安裝方式我採用直接include 檔案這個較簡單的方法。

直接下載完後將裡面所需的.hpp include 至標頭就大功告成,詳細說明有官網的spec,可以參考看看
(在 project proporties -> VC++ Dir -> Include Dir 增加 .h檔案位置
      project proporties -> C/C++ General -> Additional Include Dir 增加 .hpp檔案位置

以上就是我記錄的步驟


((但目前裝完後幫艾斯後還是有問題 再找時間找我到底還有改哪裡= =||

-------------------------------------------
另外紀錄步驟一下 在嘗試過程有使用glew source pack裡面的 build\VS
四個檔案build完會產生 glew32d.dll 和 glew32d.lib 但我後來把這個刪掉了

還有使用glew binary pack的時候
有執行過bin\glewinfo visualinfo
雖然也不知道會有甚麼影響啦XD

-------------------------------------------

This won't work:
http://stackoverflow.com/questions/4711113/glew-in-vs-2010-unresolved-external-symbol-imp-glewinit

Mainly based on this one:
http://openglbook.com/setting-up-opengl-glew-and-freeglut-in-visual-c/
但有些步驟有問題(像是改成C編譯那部,我只有取其中一些做)



----------------------------------------------------------------------------
[run on linux]

相對簡單很多
先用apt-cache search 需要的lib : libglew, libglew-dev, libglm, .....

glfw要先安裝
http://stackoverflow.com/questions/7139086/static-compile-glfw

主要是在Makefile裡面設定 glm glfw的位置
static library:
http://stackoverflow.com/questions/7132340/static-build-glew-glfw-on-linux 
-L[Path]
-I[Lib]
-lGLEW -lm
  

沒有留言:

張貼留言