将 dlib 与 libjpeg 一起使用时出现链接错误

Linking error while using dlib with libjpeg

提问人:Arpit 提问时间:9/22/2014 最后编辑:Arpit 更新时间:9/24/2014 访问量:2355

问:

我正在学习机器学习和模式识别,并为此使用库。我正在尝试库提供的一个示例。我在 Visual Studio 2010 下创建了一个单独的项目,并包含示例和文件。它构建得很好。但是,如果我启用dlibcode face_detection_ex.cppface_detection_ex.cppdlib\all\source.cppDLIB_JPEG_SUPPORT

#define DLIB_JPEG_SUPPORT

然后它将抛出库使用的所有库函数的链接错误。我尝试过,我也尝试将库包含在项目属性中,但仍然相同。LNK2019libjpegdlib#pragma comment(lib, libjpeg)

在这个错误上花了 1 天时间后,我切换到 linux 并尝试在其中工作。但我也遇到了同样的链接错误。

然后在发行说明中,我读到该库包含在 dlib 的外部文件夹中,并使用 dlib 的文件作为示例代码,并将执行静态链接。我试过了,并且与它链接。我试图找出链接是如何发生的,因为我希望它也能与 Visual Studio 和其他编译器一起使用,但我无法找出为什么该库无法链接。dliblibjpegcmakecmakecmakelibjpeg

有什么建议吗?

编辑:这里提到了如何与Visual Studio一起使用。以及如何在 linux 上编译示例。因此,由于我必须与库链接,因此我在命令中添加了。dliblibjpeg-ljpeg

C++ visual-studio-2010 机器学习 libjpeg 链接器错误

评论


答:

0赞 Davis King 9/24/2014 #1

可以使用 CMake 生成正确配置的 Visual Studio 项目,如果要使用 Visual Studio,这是执行此操作的最简单方法。

但是,如果确实要手动配置 Visual Studio 项目,则只需将 dlib/external/libjpeg 文件夹中的文件添加到 Visual Studio 项目中,并将 dlib/external/libjpeg 文件夹添加到包含搜索路径。