Dlib 错误:错误 C1083:无法打开包含文件:'type_safe_union/type_safe_union_kernel.h'
Posted
技术标签:
【中文标题】Dlib 错误:错误 C1083:无法打开包含文件:\'type_safe_union/type_safe_union_kernel.h\'【英文标题】:Dlib Error: error C1083: Cannot open include file:'type_safe_union/type_safe_union_kernel.h'Dlib 错误:错误 C1083:无法打开包含文件:'type_safe_union/type_safe_union_kernel.h' 【发布时间】:2015-11-08 01:31:59 【问题描述】:我想在 Visual Studio 2013 中使用 Dlib(C++ 库)的图像处理包。
我创建了一个空项目并将“dlib-18.16\dlib\all\source.cpp”添加到解决方案资源管理器中的源文件。然后,我将 dlib-18.16 的路径添加到我在 VC++ 目录中的包含目录中,我还将 dlib-18.16\dlib 的路径添加到了我在 Visual Studio 的 C/C++ General 中的附加包含目录中。
我可以运行作为 Dlib 示例之一的文件 matrix_ex.cpp,但我无法运行文件 face_detection_ex.cpp,因为出现错误“无法打开包含文件:'type_safe_union/type_safe_union_kernel.h'”其实是#include <dlib/image_processing/frontal_face_detector.h>
这行引起的
我该如何解决这个问题?为什么程序找到了一些头文件,而其他头文件都在同一个文件夹中却找不到?
【问题讨论】:
【参考方案1】:您需要将 dlib 文件夹本身添加到 VC++ 目录中的包含目录中,而是添加了它上面的文件夹。
通过扩展,这意味着您的 include 指令需要是 #include <image_processing/frontal_face_detector.h>
。
让我举一个假设的例子来更好地解释。您下载了dlib-18.16.tar.bz2
并将其解压缩到c:\projects
。这将创建一个名为 c:\projects\dlib-18.16
的文件夹。在 VC++ 目录中,您将 c:\projects\dlib-18.16
添加到包含目录中。
但这是不正确的,您应该删除该目录并添加 c:\projects\dlib-18.16\dlib
,因为这是项目的包含目录。
这将导致#include <type_safe_union/type_safe_union_kernel.h>
加载C:\projects\dlib-18.16\dlib\type_safe_union\type_safe_union_kernel.h
以及文件之间的类似内部链接。
【讨论】:
我这样做了,但情况变得更糟。现在,它也找不到`#include以上是关于Dlib 错误:错误 C1083:无法打开包含文件:'type_safe_union/type_safe_union_kernel.h'的主要内容,如果未能解决你的问题,请参考以下文章
致命错误 C1083:无法打开包含文件:“openssl/opensslv.h”
错误 C1083:无法打开包含文件:'crtdbg.h':没有这样的文件或目录
无法在 Windows 中安装 pycocotools:致命错误 C1083:无法打开包含文件:'io.h':没有此类文件或目录错误: