2009-08-03 14 views
6

Estoy trabajando en un proyecto comercial que requiere que un par de archivos se empaqueten (empaqueten) en un archivo y luego se comprimen. En este momento tenemos zlib en nuestra biblioteca de utilidades, pero no parece que zlib tenga la funcionalidad de comprimir varios archivos en un solo archivo. ¿Alguien sabe de libre bibliotecas que podría utilizar para esto?C/C++ Embalaje y compresión

Respuesta

7

¿Quizás libtar? También bajo una licencia BSD.

+0

Parece que libtar es una buena solución para este proyecto. Gracias a todos por sus rápidas respuestas. – Justin

3

Puede usar libzip - está bajo una licencia tipo BSD por lo que debe poder usarse en un proyecto comercial.

2

para comprimir varios archivos en un archivo zip que podría utilizar Zipios++

12

7Zip tiene una full SDK durante varios idiomas, incluyendo C y C++. La compresión es extremadamente buena, aunque no muy rápida. El código está licenciado bajo LGPL.

+0

7Zip también tiene un soporte decente para el cifrado AES. –

+2

Personalmente, soy un fan de 7Zip, pero la LGPL podría causar problemas en esta situación. – Justin

+0

La porción del LZMA SDK de 7-Zip es de dominio público, por lo que no se aplica ninguna preocupación LGPL. Si desea todas las funciones de 7-Zip (no solo LZMA), entonces 7-Zip está bajo la LGPL, pero esto no es un problema para aplicaciones comerciales, siempre y cuando lo deje en una DLL, incluya una copia del LGPL en su distribución, y proporcionar la fuente a pedido. –

-1

También eche un vistazo a bzip2.

+0

bzip2 no puede comprimir varios archivos en un archivo. Por lo general, utiliza tar para unir todos sus archivos en uno antes de dárselo a bzip. –