在 Visual Studio 项目目录中找不到头文件

Posted

技术标签:

【中文标题】在 Visual Studio 项目目录中找不到头文件【英文标题】:Cannot find header file in Visual Studio project directory 【发布时间】:2016-03-26 00:35:55 【问题描述】:

我正在尝试使用 Visual C++ 构建一个简单的 Windows 32 控制台应用程序乒乓球游戏。有关更多信息,请参阅链接 http://www.noobtuts.com/cpp/2d-pong-game。我已经在一个名为 freeglut_files 的文件夹中下载了一组头文件以及一个 DLL 文件和库。

结构:

/GL
    /freeglut.h
    /freeglut.lib
    /freeglut_ext.h
    /freeglut_std.h
   /glut.h
/freeglut.dll
/freeglut.lib

在 Visual Studio Community 2015 中,我的项目结构如下所示:

/Pong
    /External Dependencies
        /Contains a number of files including GL.h and GLU.h (see below)
    /Header Files
        /stdafx.h
        /targetver.h
    /Resource Files
    /Source Files
        /freeglut.dll
        /freeglut.h
        /freeglut.lib
        /freeglut_ext.h
        /freeglut_std.h
        /glut.h
        /Pong.cpp (executable)
        /stdafx.cpp
        /ReadMe.txt

我将所有文件(包括 GL 目录)添加到我的 Visual Studio 项目的源文件目录中。 出于某种原因,Visual Studio 将一些头文件放在了/External Dependencies 文件夹中,包括 GL.h 和 GLU.h。但是,我的编译器似乎找不到 freeglut.h。我尝试将其移至/Header Files 目录,但无法将其移至/External Dependencies 目录。这是我的 Pong.cpp 代码

#include "stdafx.h"
#include <string>
#include <windows.h>
#include <iostream>
#include <conio.h>
#include <sstream>
#include <math.h>
#include <gl\GL.h>
#include <gl\GLU.h>
#include "freeglut.h"

#pragma comment (lib, "OpenGL32.lib")

int _tmain(int argc, char** argv)

    return 0;

编译器不会编译我包含 freeglut.h 的行。这个文件应该在哪里?为什么我不能添加到/External Dependencies

【问题讨论】:

试着把它放到你的头文件目录中。 “外部依赖”是一个自动生成的文件夹。您不能手动添加任何内容。您的项目文件包含的所有未添加到“头文件”的内容,将自动出现在“外部依赖项”中。 但是,您在“头文件”和“外部依赖项”中看到的内容并不重要。唯一重要的文件夹是“源文件”,它应该包含可编译的源文件。你添加了很多不应该存在的东西。 .h 在“源文件”中没有业务。 .dll.lib 文件也没有业务。 dll 和库会去哪里 在头文件里还是找不到 【参考方案1】:

查看页面Team Development with Visual Studio .NET and Visual SourceSafe。它也可能对将来的问题有所帮助。尝试从您正在使用的软件的开发人员那里找到答案总是好的。

【讨论】:

以上是关于在 Visual Studio 项目目录中找不到头文件的主要内容,如果未能解决你的问题,请参考以下文章

Visual Studio项目相对路径的设置,实用

MinGW gcc 在 /local/include 中找不到头文件

C++ 项目依赖问题 Visual Studio 2005

如何在 Visual Studio 中使用 g++ 编译器

项目在 Visual Studio 2015 PrivateAssemblies 中找不到 dll

Visual Studio:在要添加到项目的项目列表中找不到“资源文件”