Windows、Linux/Unix、MacOSのいくつかのバージョンで、非GUI C/C++アプリケーションからファイルを圧縮できるようにしたい。
ユーザーは、Eclipse + makefileまたはVisualStudioを使用して、このアプリを使用してコンパイルおよび実行します。ユーザーが何かを個別にインストールしたり、makefileに実行可能ファイルをインストールしたりしたくありません。
オープンソースを好む。私はすでに「Zip 3.0」を見ています...
Libarchive を見てください。便利なインターフェースを備えたクロスプラットフォームおよびLGPLライセンスのライブラリを探すために多くの時間を費やしました。これは私が見た中で最高です。非常に簡単で強力なツール。もともとはUnixライクなシステム用に設計されていましたが、 Windowsバージョン もあります。
ZipLibをお勧めします https://bitbucket.org/wbenny/ziplib/wiki/Home
私がこのプロジェクトを気に入っている個人的な理由:
このプロジェクトを見つけるのに長い時間がかかりました。これが誰かの役に立てば幸いです。
私はminizで素晴らしい結果を出しました: https://code.google.com/p/miniz/
C++での文字列の単純な圧縮については、 Timo Bingmannの解 もとても気に入っています。
ここでは zlib を数回使用しました。これは、ほとんどの主要言語で実装されているかなり標準的なライブラリです。
ZLIB-世界で最もポータブルなライブラリ。非常に実績があり信頼できるオープンソース。ゴールドスタンダード。なぜ他のものを使うのですか?
他の人はzlibについて言及していますが、これは素晴らしく、かなり簡単です。
7-Zip(LZMA)SDK はより複雑ですが、圧縮率も非常に優れています。
編集:まだ開発中ですが、リリースプロセスと時間の経過とともに、私はこれをお勧めするのをためらいます。