【问题标题】:why does it not recognise include files and folders为什么它无法识别包含文件和文件夹
【发布时间】:2020-10-11 14:00:42
【问题描述】:

每次我尝试编译它来测试它都无法识别文件

#include 
#include 

#ifdef _WIN32
#pragma 注释(lib,“winmm.lib”)
#endif // _WIN32

诠释主要(无效)
{
    GLFWwindow* 窗口;

    /* 初始化库 */
    如果(!glfwInit())
        返回-1;

    /* 创建一个窗口模式窗口及其 OpenGL 上下文 */
    window = glfwCreateWindow(640, 480, "Hello World", NULL, NULL);

    如果(!窗口)
    {
        glfw终止();
        返回-1;
    }

    /* 使窗口的上下文成为当前的 */
    glfwMakeContextCurrent(窗口);
    如果(!glewInit())
      返回-1;

    /* 循环直到用户关闭窗口 */
    而(!glfwWindowShouldClose(窗口))
    {
        /* 在这里渲染 */
        glClear(GL_COLOR_BUFFER_BIT);

        /* 交换前后缓冲区 */
        glfwSwapBuffers(窗口);

        /* 轮询和处理事件 */
        glfwPollEvents();
    }

    glfw终止();
    返回0;
}

【问题讨论】:

  • “它不识别文件”是什么意思?你有任何错误吗?
  • 是的,我放入了所需的包含文件,但它无法识别它
  • 如果有这样的文件,请查看您的预编译头目录。
  • 什么意思?
  • 你的问题问得不好。您需要更准确地询问您的要求

标签: c++ visual-studio-code


【解决方案1】:

当您使用编译器时,您需要告诉它要查找包含的文件的目录。 在行中

#include <GL\glew.h>
#include <GLFW/glfw3.h>

这告诉编译器包含文件glew.hglfw3.h。 问题是编译器应该如何知道这些文件在哪里(它不会在整个驱动器中搜索它们。c++ 编译器有办法告诉它这些文件的相对位置。

在 gcc/g++ 中,您使用 -I 标志并指定此目录的位置。

使用-I 选项指定您将gl\glew.hglfw\glfw3.h 存储到gcc 的文件夹。如果您的文件存储在C:\Users\John\Projects\dependencies\GLFW\include\glew\glew.hC:\Users\John\Projects\dependencies\Glew\include\glfw\glfw3.h 然后像这样使用标志

gcc -IC:\Users\John\Projects\dependencies\GLFW\include
    -IC:\Users\John\Projects\dependencies\Glew\include main.c -o out_file

【讨论】:

    猜你喜欢
    • 2022-01-10
    • 2015-02-11
    • 2016-06-03
    • 2019-11-15
    • 1970-01-01
    • 2021-12-10
    • 1970-01-01
    • 2019-09-02
    • 2015-04-03
    相关资源
    最近更新 更多