FastLZ - 快速无损压缩库


MIT
Windows
C/C++

软件简介

FastLZ 是免费开源的,便携式压缩库。

FastLZ 压缩 10 亿字节的文本文件,更多内容请看 基准测试结果

支持 Microsoft Windows, Linux,其他 Unix 系统,甚至是 DOS。在 x86, Itanium 和 UltraSPARC
机器上也能运行的很好。

FastLZ 包括两个文件: fastlz.h and fastlz.c。

使用 GCC 编译:

  gcc -o 6pack 6pack.c fastlz.c
  gcc -o 6unpack 6unpack.c fastlz.c

MinGW 编译:

  mingw32-gcc -o 6pack 6pack.c fastlz.c
  mingw32-gcc -o 6unpack 6unpack.c fastlz.c

使用 Microsoft Visual C++:

  cl 6pack.c fastlz.c
  cl 6unpack.c fastlz.c
使用 Borland C++:

  bcc32 6pack.c fastlz.c
  bcc32 6unpack.c fastlz.c
使用 OpenWatcom C/C++:

  cl386 6pack.c fastlz.c
  cl386 6unpack.c fastlz.c

使用 Intel C++ compiler for Windows:

  icl 6pack.c fastlz.c
  icl 6unpack.c fastlz.c

使用 Intel C++ compiler for Linux:

  icc -o 6pack 6pack.c fastlz.c
  icc -o 6unpack 6unpack.c fastlz.c

使用 LCC-Win32:

  lc 6pack.c fastlz.c
  lc 6unpack.c fastlz.c
使用 Pelles C:

  pocc 6pack.c
  pocc 6unpack.c
  pocc fastlz.c
  polink 6pack.obj fastlz.obj
  polink 6unpack.obj fastlz.obj

为了优化速度,编译 flags 来优化选项。
经典的编译器 flags 如下:

* GCC (pre 4.2): -march=pentium -O3 -fomit-frame-pointer -mtune=pentium
* GCC 4.2 or later: -march=pentium -O3 -fomit-frame-pointer -mtune=generic
* Digital Mars C/C++: -o+all -5
* Intel C++ (Windows): /O3 /Qipo  
* Intel C++ (Linux): -O2 -march=pentium -mtune=pentium
* Borland C++: -O2 -5
* LCC-Win32: -O
* Pelles C: /O2