This file describes how to build TSK using Visual Studio (see README_win32.txt for instructions on building the win32 libraries and executables from Linux).  If you do not have a copy of Visual Studio, you can use the free Express Edition:

    http://www.microsoft.com/express/vc/

The Visual Studio Solution file has three build targets: Debug, Debug_NoLibs, and Release.  Debug and Release require that libewf exists (to provide support for E01 image files) and that zlib exists (to provide support for HFS+ compressed data).   Debug_NoLibs does not require libewf or zlib and you should be able to compile Debug_NoLibs without any additional setup.

The steps below outline the process required to compile the Debug and Release targets.

1) Download libewf-20120304 from:
    http://sourceforge.net/projects/libewf/

2) Open archive file and follow the README instructions in libewf to build libewf_dll (at the time of this writing, that includes downloading the zlib dll). Note that TSK will use only the Release version of libewf_dll.  Later steps also depend on the zlib dll being built inside of libewf. 

3) Set the LIBEWF_HOME environment variable to point to the libewf folder that you created and built in step 2. 

4) If you want ot build libtsk_jni for the Java JNI bindings, then set the JDK_HOME environment variable to point to the top directory of your Java SDK.

5) Open the TSK Visual Studio Solution file, tsk-win.sln, in the win32 directory. 

6) Compile a Debug, Debug_NoLibs, or Release version of the libraries and executables.  The resulting libraries and executables will be put in win32/Debug, win32/Debug_NoLibs, or win32/Release as appropriate.

7) Note that the libraries and executables will depend on the libewf and zlib dll files (which are copied to the TSK build directories). 

Refer to the API docs at http://sleuthkit.org/sleuthkit/docs/api-docs/ for details on how to use the library in an application.

-------------------------------------------------------------------
carrier <at> sleuthkit <dot> org
Brian Carrier
