Macos 在Mac OSX 10.9上使用GLFW库的OpenGL 3.3/4.1
我正在尝试在MacOSX 10.9上使用OpenGL 3.3/4.1,现在它终于可以使用了。我一直在使用SuperBible 5的书和它的例子来学习3.3。我刚刚发现它实际上只运行OpenGL 2.1,但对于我的示例,当我的顶点着色器开始拒绝编译时。我发现我需要找到这个GLFW库来为我做OpenGL窗口。这个库将允许我使用OSX能够运行的OpenGL的4.1版本。我的问题是,有没有人有Mac OSX 9 OpenGL库GLFW 3.0.4版的静态版本可以发送给我?尝试从头开始构建库是一种真正的痛苦,因为它涉及到安装CMake,然后是库代码,然后试图让所有这些一起工作并编译。我真的只需要这个库就可以开始运行OpenGL 3.3/4.1了。要从源代码构建GLFW库,只需要几个步骤:Macos 在Mac OSX 10.9上使用GLFW库的OpenGL 3.3/4.1,macos,opengl,glfw,Macos,Opengl,Glfw,我正在尝试在MacOSX 10.9上使用OpenGL 3.3/4.1,现在它终于可以使用了。我一直在使用SuperBible 5的书和它的例子来学习3.3。我刚刚发现它实际上只运行OpenGL 2.1,但对于我的示例,当我的顶点着色器开始拒绝编译时。我发现我需要找到这个GLFW库来为我做OpenGL窗口。这个库将允许我使用OSX能够运行的OpenGL的4.1版本。我的问题是,有没有人有Mac OSX 9 OpenGL库GLFW 3.0.4版的静态版本可以发送给我?尝试从头开始构建库是一种真正的痛
cd
到提取的目录cmake.
,点击returnMakefile
make
,点击returnsudomakeinstall
/usr/local/lib/
,头文件将被复制到/usr/local/include/
注意:您需要安装一个编译器套件来构建软件,这通常是XCode命令行工具包。为此,请从应用商店安装并启动XCode或从下载工具。我建议通过自制安装glfw 优点是,通过执行
brew uninstall glfw3
,您可以轻松地卸载它
您需要安装“用于Xcode的命令行工具”和Xcode
xcode选择--安装
安装自制软件后,打开终端并运行
brew更新
brew点击自制/版本
brew为glfw3安装glfw3
,或
brew为glfw2安装glfw2
此外,如果需要静态构建,请使用标志--static
brew安装——静态glfw3
库和包含文件将在usr/local/lib
和usr/local/include
现在,如果您有一个依赖于opengl和glfw的程序,您可能希望编译它如下:
gcc program.c-o myapp-framework OpenGl-lglfw3
(或-lglfw2)
如果glfw头文件仍然存在一些问题,可以执行以下操作:
gcc program.c-o myapp-framework OpenGl-I/usr/local/include-lglfw3
如果链接器有问题,请尝试如下编译:
g++ youSource.cpp -I/usr/local/include -L/usr/local/lib -lglfw3 -framework Cocoa -framework OpenGL -framework IOKit -framework CoreFoundation -framework CoreVideo
或者只是:
g++ youSource.cpp -I/usr/local/include `pkg-config --cflags glfw3` `pkg-config --static --libs glfw3`
嗨,亚当。谢谢。我现在就试试这个。我对非实时图形编程很在行,但对OpenGL还不是很在行。嗨,亚当,非常感谢。你是上帝派来的。这很有魅力。我必须在Maverics中启用root用户,然后才能“su root”并安装到/user/local/libs和include目录。否则,我没有安装到此目录的权限。没问题!很好,它能工作。请注意,您可以始终使用
sudo
来运行具有root权限的命令,而不是suroot
,例如sudo make install
。(别忘了把这个答案标记为已接受;-)顺便说一句,如果我是你,我就不再叫它Mac OSX 9了。我看到这一点,立刻想到了“MacOSClassic”,因为我的脑子里没有了“X”。该平台/版本的官方名称实际上是MacOSX10.9HiAdam。好的,谢谢。如果我说OSX 9,那就是我的错误!我想每个人都会知道这是特立独行的。是的,这只是有点让人困惑,因为在OSX之前,苹果有着普通的“MacOS”。有一个Mac OS 9,这是Mac OS迁移到OS X之前的最后一个版本。当OS X首次发布时,机器将附带它和一个Mac OS 9的副本(为了与旧软件兼容)。这被亲切地称为“MacOS经典”。因此,对于资深的OS X用户来说,将其称为Mac OSX 9可能会让人非常困惑;)与我的brew不兼容!错误:glfw3搜索公式没有可用公式。。。搜索水龙头。。。homebrew/versions/GLFW3现在,brew安装glfw
将安装glfw-3.2.1。而且它的最低限度使用可能是g++main.cpp-lglfw
@Pranjal@Hustlion似乎不再正确了——没有glfw
或glfw3
这样的公式我可以从brew安装该软件包。只需要对编译器库链接使用“glfw”,而不是“glfw3”。第一个命令对我有效。你介意解释一下后面的部分吗?(-framework Cocoa-framework OpenGL-framework IOKit-framework CoreFoundation-framework CoreVideo)