фатальная ошибка: GLFW/glfw3.h: Нет такого файла или каталога 28 | #include <GLFW/glfw3.h>

Рейтинг: 0Ответов: 0Опубликовано: 06.06.2023

Перешёл с дистрибутива Debian на Fedora linux. С помощью данного cmake скрипта собирал свою библиотеку на C++:

cmake_minimum_required(VERSION 3.12)
set(CMAKE_CXX_STANDARD 17)
project(KubeEngine)

find_package(Vulkan REQUIRED)
find_package(OpenGL REQUIRED)
find_package(glfw3 REQUIRED)

# set(SOURCES_DIR "kube_engine/core")
# file(GLOB SOURCES "${SOURCES_DIR}/*.cc")*
set(SOURCES 
    kube_engine/api/kube_engine_core_api.cpp
)

add_library(KubeEngine SHARED ${SOURCES})
target_include_directories(KubeEngine PRIVATE ../KubeEngine)
target_compile_options(KubeEngine PRIVATE -Wall -fPIC)

target_link_libraries(KubeEngine Vulkan::Vulkan)
target_link_libraries(KubeEngine OpenGL::GL)
target_link_libraries(KubeEngine glfw)
target_link_libraries(KubeEngine dl)

проблема в том, что на том же Debian с библиотекой glfw всё собиралось хорошо, когда же на fedora:

sh-5.1$ cmake -S . -B build
CMake Error at CMakeLists.txt:18 (find_package):
  By not providing "Findglfw3.cmake" in CMAKE_MODULE_PATH this project has
  asked CMake to find a package configuration file provided by "glfw3", but
  CMake did not find one.

  Could not find a package configuration file provided by "glfw3" with any of
  the following names:

    glfw3Config.cmake
    glfw3-config.cmake

  Add the installation prefix of "glfw3" to CMAKE_PREFIX_PATH or set
  "glfw3_DIR" to a directory containing one of the above files.  If "glfw3"
  provides a separate development package or SDK, be sure it has been
  installed.


-- Configuring incomplete, errors occurred!

Естественно все пакеты установлены:

sudo dnf install glfw-devel glfw

Пробовал также делать то, что просит cmake:

export CMAKE_PREFIX_PATH=/usr/lib64/cmake/glfw/
export CMAKE_MODULE_PATH=/usr/share/cmake/Modules/

Результатов снова ноль, пробовал компилировать с помощью make:

/home/vaisone/Документы/project/KubeEngine/../KubeEngine/kube_engine/core/platform.cc:28:14: фатальная ошибка: GLFW/glfw3.h: Нет такого файла или каталога
   28 |     #include <GLFW/glfw3.h>
      |              ^~~~~~~~~~~~~~
компиляция прервана.

Чтобы я не делал, он просто её тупо не видит, результатов ноль.

Ответы

Ответов пока нет.