2014-09-09 4 views
1

Мое требование - распаковать zip-файл, который я получаю с сервера на платформе Linux. Теперь мой C/C++ code должен распаковать папку для получения файлов json.unzipping zip-файл с zlib/minizip: C/C++ Application

Я сделал свое исследование в Интернете и обнаружил, что я могу использовать zlib библиотеки для этой цели, но Zlib не может распаковать .zip файл, но он имеет в своем contrib папки minizip, которые могут быть использованы для этой цели.

Приглашен: Simple way to unzip a .zip file using zlib

Я скачал zlib исходный файл: zlib source code, version 1.2.8, zipfile format (678K, MD5 checksum 126f8676442ffbd97884eb4d6f32afb4) из http://www.zlib.net/

Теперь я хожу в zlib-1.2.8\contrib\minizip и попытаться собрать miniunz.c

Я стараюсь make all но получить под ошибкой:

[@DELL-BUILD03 minizip]$ make 
cc -c -O -I../.. miniunz.c 
cc -c -O -I../.. unzip.c 
cc -c -O -I../.. ioapi.c 
make: *** No rule to make target `../../libz.a', needed by `miniunz'. Stop. 

Я попытался вручную разместить предварительно скомпилированный libz.a в папке zlib-1.2.8.

Но все та же ошибка. Как это сделать и unzip Образец json.zip folder?

+1

Если файл существует и иметь соответствующую дату последнего изменения, он должен работать. Я бы порекомендовал посмотреть https://code.google.com/p/miniz/, хотя очень хороший однопользовательский почтовый обработчик. – keltar

+1

Создайте zlib два каталога вниз, используя make, и он оставит там libz.a. Затем сделайте make в каталоге minizip. –

+0

@MarkAdler Я попытался поместить предварительно скомпилированную 'libz.a' там, но все же такую ​​же ошибку. 'zlib' make не имеет никакого' target' или 'build rule' –

ответ

2

Решенный ошибку, запустив make первый в zlib-1.2.3, а затем сделать в minizip

Смежные вопросы