CMake не может найти minizip, но я могу использовать zlib

#c #zip #zlib #minizip

Вопрос:

Я пытаюсь использовать minizip в библиотеке zlib. Я компилирую на CentOS и получил zlib, используя

 yum -y install zlib-devel
 

Проблема в том, что при компиляции (и привязке к libz.so файл библиотеки), похоже, я могу получить все в zlib, но ни один из заголовочных файлов или функций для minizip не найден. Например, find_package(ZLIB REQUIRED) работает, и так работает #include <zlib.h> , но #include <minizip/zip.h> возвращает файл не найден.

Следуя инструкциям из блога Джона на minizip https://nachtimwald.com/2019/09/08/making-minizip-easier-to-use/

pkg_check_modules(MZIP minizip REQUIRED) дает мне минизип не найден.

Глядя на rpm -ql zlib-devel дает

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

Я думал, что все в minizip будет просто частью libz.so? Или мне нужно сделать что-то еще, чтобы подключиться к minizip?
Спасибо.

Ответ №1:

Нет, minizip не является частью библиотеки zlib. Он включен в дистрибутив исходного кода zlib вместе с несколькими другими сторонними материалами в contrib/ каталоге.

Вам нужно будет скомпилировать его самостоятельно.

Комментарии:

1. Спасибо за ответ! Являются ли пакеты yum install minizip-devel все еще устаревшими или они также актуальны сейчас?

2. Я понятия не имею. Я даже не знаю, что такое «вкуснятина», кроме того, что я говорю после того, как съел мороженое.