CMake 找不到 minizip 但我可以使用 zlib

CMake can't find minizip but I can use zlib

我正在尝试在 zlib 库中使用 minizip。我在 CentOS 上编译并使用

获得 zlib
yum -y install zlib-devel

问题是,在编译时(和 linking 到 libz.so 库文件),看起来我可以得到 zlib 中的所有内容,但是头文件的 none或可以找到 minizip 的功能。例如,find_package(ZLIB REQUIRED) 有效,#include <zlib.h> 也有效,但找不到 #include <minizip/zip.h> returns 文件。

按照 John 在 minizip 上的博客中的说明进行操作 https://nachtimwald.com/2019/09/08/making-minizip-easier-to-use/

pkg_check_modules(MZIP minizip REQUIRED) 提示我找不到 minizip。

查看rpm -ql zlib-devel给出

/usr/include/zlib.h
/usr/lib64/libz.so

我以为 minizip 中的所有内容都只是 libz.so 的一部分?或者我需要做更多的事情来 link 来最小化吗? 谢谢。

不,minizip 不是 zlib 库的一部分。它包含在 zlib 源代码分发中,连同其他几个第三方贡献,在 contrib/ 目录中。

需要自己编译。