CMake - 如何轻松添加缺少的库?

CMake - how to add a missing library easily?

我正在尝试使用这些说明从这里 https://github.com/AlexeyAB/darknet 安装 Darknet:

https://github.com/AlexeyAB/darknet#how-to-compile-on-windows-using-cmake

看起来很简单,我安装了所有必需的先决条件...

我在使用 CMake 时收到错误“无法找到 JPEG(缺少:JPEG_LIBRARY JPEG_INCLUDE_DIR)”,我在 Zlib 中遇到了类似的错误,我可以使用它进行安装.bat 文件 https://github.com/horta/zlib.install/blob/master/install.bat

将名为“JPEG”的库包含在 Cmake 的库范围内的最简单方法是什么?

在 Windows 上,管理 C++ 依赖项的最简单方法 到目前为止 vcpkg。按照他们的 repo 上的说明进行安装:

> git clone https://github.com/microsoft/vcpkg
> .\vcpkg\bootstrap-vcpkg.bat

然后安装 libjpeg 以及任何其他依赖项:

> .\vcpkg\vcpkg install libjpeg libjpeg-turbo:x64-windows

如果您需要 32 位,请另外(或代替)安装 libjpeg-turbo:x86-windows

然后,在尝试构建 Darknet 时,配置 CMake:

> cmake -DCMAKE_TOOLCHAIN_FILE=X:/path/to/vcpkg/scripts/buildsystems/vcpkg.cmake ...

另一方面,vcpkg 有一个暗网端口,所以你可以 运行:

> .\vcpkg\vcpkg install darknet[full]:x64-windows

没有回答您提出的问题,但也许这正是您想要的。