Ok, I've finally taken the time to replace the generic default installation
instructions with my own more specific ones, so now we should cover all
architectures.

/Tord
BladeEnc Maintainer


Windows (using Visual C++):
===========================

1. Create a new, empty "Win32 Console Application" project.
2. Add all the .C and .H files from the folder "bladeenc" to this new project.
3. Compile. You should now have a working binary.

NOTE!:
Some older versions of Visual C++ have been known to generated degraded
versions of BladeEnc, generating bad output. This might no longer be an issue
due to changes in BladeEnc, but in order to be sure, follow the quality
test steps at the end of this file.


All UNIX systems (Linux, FreeBSD, Solaris, AIX, UnixWare, HPUX etc)
===================================================================

Use the normal procedure of "./configure" and "make". "Make install" might not
work yet, so you might have to copy the resulting binary by hand to wherever
you want it (/usr/bin is recommended).

Alternatively you can on some systems (tested on Linux) just go to the bladeenc
subdirectory and type:

gcc -O3 -o bladeenc *.c -lm


BeOS (i386 & PPC):
==================

Go to the bladeenc subdirectory and type:

gcc -O3 -o bladeenc *.c


Other architectures / compilers:
================================

If your architecture is listed at the top of system.h it is supported (or at
least supposed to be, it can be temporarily broken) and should be able to
create an executable using any good compiler following these easy steps:

1. Change the SYSTEM-define in system.h to reflect your architecture.
2. Compile all .C files in the bladeenc-subdirectory into an executable
   using whatever compiler you prefer. Hopefully it works.



Quality test:
=============

Some compilers (including certain revisions of both Visual C++ and GNU C) have
been found to generate degraded versions of BladeEnc if optimizations are
turned on. To be sure that you don't have any quality degradation, follow these
easy steps:

1. Compile BladeEnc without any optimizations enabled (in VC++: use "debug").
2. Encode a sample (at least 10 seconds) with the unoptimized BladeEnc.
3. Compile BladeEnc using all optimizations you want.
4. Encode the same sample, using the same settings with this optimized
   BladeEnc.
5. Compare the generated mp3-files using any kind of file comparison programs
   or checksum programs. The files should be 100% identical.

As far as I know has no compiler generated a degraded BladeEnc when
optimizations are disabled.

