我最近开始将我用 Java(使用 lwjgl)编写的游戏引擎转换为 C/C++。我在 Fedora 25 上使用 Qt Creator 和 CMake(我很确定这不会影响任何东西)来链接所有目录、文件等。 GLFW 安装在我的系统上,但我决定使用源版本,而不是比包含的版本。我正在为我的扩展加载器使用高兴,并按照GLFW 网站上的教程对其进行配置。我没有通过“Hello World”测试,因为当我将glad.h
文件包含在我的main.c
文件中时,我收到一个错误:
<glad/glad.h>: No such file or directory
同样奇怪的是,我在glad.c
文件中遇到了同样的错误,这个错误是使用高兴自己的生成器创建的。我的main.c
文件看起来像这样
#include <stdio.h>
#include <glad/glad.h>
#include <GLFW/glfw3.h>
int main(int argc, char *argv[])
{
printf("Kick Ass Game Engine");
return 0;
}
我也尝试过使用"glad.h:
而不是(我在这里<glad/glad.h>
找到了这个建议)。这确实适用于我的文件,但我仍然对文件有同样的问题,即使在我编辑它以反映.main.c
glad.c
main.c
我的项目目录如下所示:
- KAGE/
-> CMakeLists.txt
-> glad.c
-> glad.h
-> main.c
-> khplatform.h
-> KAGE/lib/
-> glad
-> glfw-3.2.1
如您所见,我的所有.c
头文件和它们的所有头文件都在一个目录中。该lib
目录是我保持高兴和 glfw 的地方。我只是将文件从lib/glad
目录复制到主项目之一。
我的CMake
长相是这样的
project(KAGE)
cmake_minimum_required(VERSION 2.8)
aux_source_directory(. SRC_LIST)
add_executable(${PROJECT_NAME} ${SRC_LIST})
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(/home/brian/KAGE/lib/glfw-3.2.1)
find_package(OpenGL REQUIRED)
target_link_libraries(KAGE glfw)
我尝试过四处搜索,但是人们在尝试调用系统上安装的库时遇到的所有问题。我的没有安装。我有一个单独的目录 ( lib
),其中保存了我使用的所有内容。我发现的唯一接近我正在寻找的解决方案是关于替换<glad/glad.h>
为"glad.h"
. 正如我之前所说,这不起作用。GLFW 网站上的教程不提供任何其他信息或故障排除。
非常感谢任何帮助或建议。谢谢你。