即时通讯在Mac OS X雪豹GCC 4.5.4 | gcc 4.2.1,尝试构建教程http://www.arcsynthesis.org/gltut/

首先需要建立dir glsdk。我通过macports freeglut @ 2.8.0_1( Activity )安装了freeglut(必备软件),并手动复制并粘贴了它的lib,并将其包含在dir glsdk中,以便
ls .... / Tutorial_0_3_8 / glsdk / freeglut-> include lib
(我无法构建freeglut,这就是为什么我用macports的freeglut代替它)

修复了许多错误(主要是由于包括旧代码段)后,我正在测试目录中测试构建,当我尝试运行生成的可执行文件./TestD时,我得到:

X错误的失败请求:BadRequest(无效的请求代码或没有这样的操作)
失败请求的主要操作码:34(X_UngrabKey)
请求失败的序列号:28
输出流中的当前序列号:28

这是什么?一点搜索表明这是驾驶员的问题(?)。
当我将glut与其他gl代码一起使用时,它运行得很好

最佳答案

我的X11坏了**,这似乎是问题所在。
由于构建这套教程非常棘手,因此我对遇到类似问题的任何人重复执行我的步骤

  • 获取源文件https://bitbucket.org/alfonse/gltut/downloads,解压并填补空白,以便您拥有Tutorial_0_3_8而不是Tutorial 0 3 8
  • glsdk目录中的
  • ,在premake4.lua中注释掉--"freeglut/freeglut.lua
  • glsdk目录中的
  • ,先输入./premake gmake,然后再输入make config=release
  • 框架目录framework.cpp中的
  • ,分别用“./data/” LOCAL_FILE_DIRGLOBAL_FILE_DIR手动替换"./data/""../data/"宏,并注释掉#include "directories.h"
  • 从根目录或您需要的教程(例如在Test目录中,放置正确的路径以包含freeglut header ,并使用以下链接:
    在Test.make中,将-I../glsdk/glutil/include-L../glsdk/glutil/lib替换为通过macports从freeglut构建的路径。同样在同一makefile中,使用-lglut代替-lfreeglut

  • ** dyld: Symbol not found: __cg_DGifGetLine Referenced from: /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ImageIO.framework/Versions/A/ImageIO Expected in: /opt/local/lib/libGIF.dylib in /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ImageIO.framework/Versions/A/ImageIO

    10-08 00:30