gpt4 book ai didi

c++ - Qt5 & OpenGL : stdlib. h: 没有那个文件或目录

转载 作者:行者123 更新时间:2023-11-28 04:23:55 33 4
gpt4 key购买 nike

我开始研究如何在我的 Qt5 项目中集成 GLFW、GLAD 和 OpenGL。我收到此 stdlib.hno such file or directory 错误。我尝试运行的示例是 from official OpenGL documentation . This document很好地描述了运行该项目的过程以及从这里开始的所有其他 session 。

我的 stdlib.h 出现在 /usr/include/stdlib.h 上,从这个打印屏幕可以看出:

path除此之外,我还有一个奇怪的错误,编译器需要花括号,但无法找出这个错误的原因:

bracket error更详细的错误描述如下:

detailed_error我一直在研究这个错误,我看了看 here , 和 here甚至我用了this source但无法弄清楚问题是什么以及如何链接已经在显示路径中的库。

代码片段是:

helloOpenGL.pro

TEMPLATE = app
CONFIG += console c++11
CONFIG -= app_bundle
CONFIG -= qt
SOURCES += \
main.cpp

LIBS += -L "/usr/lib" \
-lX11 -lpthread -lXrandr -lXi -ldl -lGL

INCLUDEPATH += "/usr/include"
LIBS += -L "/usr/include/GLFW" \
-lglfw3

ma​​in.cpp 中的主要包含如下:

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

感谢您阐明这个问题。

最佳答案

尝试改变

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

#include <cstdlib>
#include <iostream>
#include "../glad/glad.h"
#include "../GLFW/glfw3.h"

然后看看这是否改变了错误。在 stdlib.h 上更改为 cstdlib 是因为 stdlib.h 是 C 头文件而不是 C++ 头文件,并且 cstdlib 做了一些命名空间的东西和一些细微的修改以使其更像 C++,如所述here .至于使用 glad 和 GLFW header 将 <> 更改为 "",这只会改变预处理器搜索 header 的位置,这也可能与您的错误有关。

至于这个问题, header 及其在 C++ 中的顺序很重要。我有一种直觉,这里的排序导致了一些问题。请改变它,如果它没有修复,希望它能揭示更多关于这个问题的信息。

关于c++ - Qt5 & OpenGL : stdlib. h: 没有那个文件或目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54859075/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com