c++ - 为什么它无法识别包含文件和文件夹
问题描述
每次我尝试编译它来测试它都不会识别文件
#include <GL\glew.h> #include <GLFW/glfw3.h> #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; }
解决方案
当您使用编译器时,您需要告诉它要查找包含的文件的目录。在行
#include <GL\glew.h>
#include <GLFW/glfw3.h>
这是告诉编译器包含文件glew.h
和glfw3.h
. 问题是编译器应该如何知道这些文件在哪里(它不会在整个驱动器中搜索它们。c++ 编译器有办法告诉它这些文件的相对位置。
在 gcc/g++ 中,您使用-I
标志并指定此目录的位置。
使用该选项指定您存储的文件夹gl\glew.h
和glfw\glfw3.h
gcc 。-I
如果您的文件存储在C:\Users\John\Projects\dependencies\GLFW\include\glew\glew.h
然后C:\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
推荐阅读
- vim - 无法在 VIM 中为 Ctrl-e abd Ctrl-y 映射键 []
- c# - 检查我是否在 C# 中连接到 SQL Server 的最快和正确方法
- python - 大熊猫中的地图数据
- reactjs - react-d3-tree 无法将节点形状设置为本地 png
- cassandra - 有没有办法使用 cassandra 压力插入 csv 文件数据?
- angular - setActive ngClass 角度
- intellij-idea - IntelliJ 2020.1 中的问题构建项目
- c# - SQL Linq:获取嵌套 DB 类的单个实例
- typo3 - TYPO3 10.3 中前端的用户名
- c# - 我不断收到此错误,但无法修复:错误 CS0161: 'Program.MathMinWhole(int, int)': 并非所有代码路径都返回值