我已經安裝使用從源代碼使用GLEW:
使GLEW_DEST = 「$ HOME /本地」 OPT = 「 - 三月=的Core2 -02」 install.all
你的優化和目的地可能會有所不同。這產生了一個libGLEW.a,libGLEWmx.a和$HOME/local/lib
中的dylib對應部分。 pkgconfig
子目錄也將包括glew.pc
。 GLEW並不總是與其他人一起玩。不必設置全局像glewExperimental
,以及爲需要小心包含其他頭的順序:<OpenGL/gl3.h>
或<glfw.h>
等
如果我可以提供一些建議 - 忘記SDL現代GL編程。如果你想進入純粹的,在OS X上的現代GL。 - 考慮是這樣的:
#if defined (__APPLE_CC__)
#include <OpenGL/gl3.h>
#else
#include <GL/gl3.h> /* assert OpenGL 3.2 core profile available. */
#endif
#define GLFW_INCLUDE_GL3 /* don't drag in legacy GL headers. */
#define GLFW_NO_GLU /* don't drag in the old GLU lib - unless you must. */
#include <GL/glfw.h> /* simple and easy to use. omit legacy GL. */
安裝GLFW是很容易的事:
> ENV PREFIX = 「$ HOME /本地」 CFLAGS = 「 - 三月=的Core2 -02」 讓可可可可dist-install
同樣,您的設置可能會有所不同。
20160412:我對SDL的意見是過時的,正如其他人指出。特別是如果你在另一個引擎上工作。我認爲glfw3是在OSX上製作現代OpenGL應用程序的一種更簡單的方法。它非常好的編寫和維護代碼,對GL和事件處理進行了精確的(正確的)關注。顯然,從'引擎'的角度來看,SDL2提供了可移植的擴展視頻API,音頻API,線程API等。儘管使用C11和C++ 11,甚至線程API抽象層也許是多餘的。
GLEW存在問題,因爲在無需大量用戶干預的情況下無法處理多個上下文。這對OSX來說不是問題,OSX提供了一個核心配置文件API,並且不需要加載「功能點」。 IIRC,GL上X(DRI?)也有這個 - 但我可能是錯誤的。那裏還有其他的裝載機。我仍然在等待一個人來統治他們,這可以確保在必要時爲不同的函數指針加載多個上下文,並且使用線程本地(或者甚至是一個pthread鍵)進行正確的分派,這可以從最新的gl從Khronos的,或者誰的.xml ...
我會建議使用像macports,fink,homebrew這樣的ports系統,因爲作者將完成將構建過程移植到OSX的工作。在這種情況下,OSX鏈接器不理解 - 共享,所以你需要使用它的等價物,並會出現其他幾個問題 – Mark
正如我所說我使用Macports,它說它已經成功,但沒有安裝 – Constan7ine
什麼'sudo port install glew'給錯誤? – Mark