c - GLFW 窗口无法打开(Ubuntu)

标签 c opengl ubuntu glfw

在 Ubuntu (9.04) 下编译和运行基于 GLFW 的 C 程序时,尝试打开窗口时失败(编译正常,安装了最新的 GLFW)。我尝试了不同的分辨率,低至 300x300,并将位深度保留为零,希望默认设置能够流行起来。

相关代码片段如下(直接从我的主文件顶部截取,基于示例文件 gears.c):

// File: main.c
#include <math.h>
#include <stdlib.h>
#include <stdio.h>
#include <GL/glfw.h>

#ifndef PI
#define PI 3.141592654
#endif

int main(int argc, char* argv[])
{
    // Initialize GLFW:
    glfwInit();

    if (!glfwOpenWindow(300, 300, 0, 0, 0, 0, 0, 0, GLFW_WINDOW)) // Yo failure!
    {
        printf("Window open failed.\n");
        glfwTerminate();
        return 0;
    }

    glfwSetWindowTitle("...");

    ...

    // Clean up:
    glfwTerminate();

    return 0;
}

其他值得注意的事实是:

  • 在 VirtualBox 3.0.2 中运行 Ubuntu,配置为 512 MB RAM,启用 3D 加速,64 MB VRAM,Guest Additions 已成功安装
  • glxgears 工作正常,甚至 > 300 FPS
  • 使用 make-x11 构建 GLFW
  • 生成文件命令行:

    gcc `pkg-config --cflags libglfw` main.c -o program `pkg-config --libs libglfw` -lglfw -lGLU -lGL -lm

  • 马克关于 C - GLFW window doesn't open on Debian 的提示似乎并没有缓解这种情况

编辑:

有什么方法可以提取更花哨的错误消息吗?任何 getLastErrorDesc() 或调试日志文件?

最佳答案

您使用的是 Ubuntu 中打包的版本还是 GLFW Subversion 存储库中的某个版本?由于删除了自定义 Visual 选择,Subversion 存储库中的 GLXFBConfig 选择被破坏了很长一段时间,因此您可能收到了错误代码。

如果是这种情况,您应该恢复到与 Ubuntu 捆绑在一起的版本,或者从 Subversion 中拉出一个新的树。

关于c - GLFW 窗口无法打开(Ubuntu),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1610458/

相关文章:

c++ - 计算着色器不会写入缓冲区

c++ - Ubuntu 12.04 上的教程 OpenGL 4

node.js - 如何从命令行或通过 npm 库打印 PDF 文件?

python - 如何使用特定的解释器运行 python 脚本?

C函数打印最大和最小数字

c - 如何持续监控 Linux 中的进程创建?

c - gl.h 包含在 glew 之前,但 GLFW 需要 gl.h

python - 尽管安装了所需的库(在 ubuntu 上使用 python3),但 Pyautogui 函数 LocateOnScreen 仍然出错。请帮帮我

c - 指向变量 C 的指针值

c - 插入有序链表并省略重复节点