安装/使用 dlib 以与 Eclipse CDT、MinGW 和 OpenCV 一起使用时出错

Posted

技术标签:

【中文标题】安装/使用 dlib 以与 Eclipse CDT、MinGW 和 OpenCV 一起使用时出错【英文标题】:Errors while installing/using dlib for use with Eclipse CDT, MinGW and OpenCV 【发布时间】:2017-06-06 15:28:30 【问题描述】:

我将 Eclipse Neon CDT 与 MinGW 一起使用。我可以使用 CMake。

我想在 Eclipse CDT 中使用 dlib 和 OpenCV,如果可能的话,只需单击“构建”按钮就可以编译我的项目,而不必离开 Eclipse。

我正在做一个同时需要 OpenCV 和 dlib 的项目。我已经成功安装了 OpenCV 并用一些程序对其进行了测试以确保它可以正常工作。但是,我在使用 dlib 时遇到问题。

我使用 CMake gui 来配置/生成,mingw32-makemingw32-make install 命令来设置我的 dlib 库。该库位于 C:/Program Files/Project 并包含三个文件夹 includelibshare

我在 Eclipse CDT 中启动了一个新项目并将我的包含路径设置为 C:/Program Files/Project/include 并添加了以下库(所有 .dll 文件)- gdi32, comctl32, user32, winmm, ws2_32, imm32

当我继续复制/粘贴示例文件 face-landmark-detection-ex.cpp 中的代码并尝试构建它时,构建控制台显示了这些 errors。

这些是导致错误的语句 - image_window win, win_faces;(第 34 行), win.clear();(第 52 行)和 win.add_overlay(render_face_detections(shapes));(第 54 行)

我不知道它是否相关,但是当我尝试提到的方法时,在这个question 的答案中,构建成功并且可执行文件工作,但我不能以这种方式包含 OpenCV 头文件和库,所以我不得不寻找其他解决方案。

【问题讨论】:

【参考方案1】:

你看过 dlib 的 how to compile page 上的说明吗?

不使用 CMake 编译 C++ 示例

在大多数情况下,要使用这个库,您所要做的就是提取它 在某处,确保包含 dlib 文件夹的文件夹在您的 包含路径,最后将 dlib/all/source.cpp 添加到您的项目中。

听起来您没有将 dlib/all/source.cpp 添加到您的项目中。

【讨论】:

我非常抱歉问这个可能是愚蠢的问题,但是如何将“source.cpp”添加到我的项目中。我知道在您之前的回答中,您建议不要将文件移动/复制到工作目录,所以我将它导入到我的项目中。但它会给出一个fatal error : file not found。我还尝试在没有任何 .dll 文件的情况下进行构建,然后它给出了 fatal error : base64_kernel_1.cpp: No such file or directory 如何将任何 cpp 文件添加到项目中?你没有代码吗? 所以我只是将源文件中的代码复制粘贴到我的工作文件中? 没有。我不知道还能说什么。 我已按照您的指示将 source.cpp 添加到工作目录,并且构建给出了 ..\source.cpp:11:41: fatal error: ../base64/base64_kernel_1.cpp: No such file or directory #include "../base64/base64_kernel_1.cpp" 错误。`

以上是关于安装/使用 dlib 以与 Eclipse CDT、MinGW 和 OpenCV 一起使用时出错的主要内容,如果未能解决你的问题,请参考以下文章

Eclipse搭建c环境(CDT)二

centos 配置eclipse jdt和cdt

使用 Eclipse CDT 创建凭据提供程序

Win7下C/C++跨平台开发工具IDE的安装之Eclipse-CDT

使用 MinGW 的 Eclipse CDT 不在控制台中输出

如何在Ubuntu中使用Eclipse + CDT开发C/C++程序