簡體   English   中英

glfwInit() 失敗。 我應該怎么辦?

[英]glfwInit() fails. What should I do?

因此,我無法創建任何窗口,因為glfwInit()失敗。

這是我的 CMakeLists.txt

cmake_minimum_required(VERSION 3.7)
project(DuperTest)

set(CMAKE_CXX_STANDARD 14)

set(GLFW_BUILD_DOCS OFF CACHE BOOL "" FORCE)
set(GLFW_BUILD_TESTS OFF CACHE BOOL "" FORCE)
set(GLFW_BUILD_EXAMPLES OFF CACHE BOOL "" FORCE)
add_subdirectory(glfw-3.2.1)

set(SOURCE_FILES main.cpp)
add_executable(DuperTest ${SOURCE_FILES})

find_package(OpenGL REQUIRED)
include_directories(${OPENGL_INCLUDE_DIRS})

target_link_libraries(DuperTest glfw)
target_link_libraries(DuperTest ${OPENGL_LIBRARIES})

我的代碼:

#include <iostream>
#include <GLFW/glfw3.h>

int main()
{
    if (!glfwInit())
    {
        std::cout << "glfwInit" << std::endl;
        glfwTerminate();
        return -1;
    }

    return 0;
}

我完全迷路了。 我如何解決它?

更新:

添加了錯誤回調。 它返回了這條消息:

"X11: The DISPLAY environment variable is missing"

我有這個問題好幾天了,在網上找不到任何有用的東西。 終於可以發現問題了: glfw-wayland包是在我使用X11系統的時候安裝的。 卸載wayland包並安裝glfw-x11成功解決了GLFW無法初始化的問題。

這個問題是在 5 多年前提出的,但我仍然回答,希望它可以使某人免於被封鎖的日子。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM