update building docs, remote dependency upon POSTGRESQL_HOME_64

This commit is contained in:
Karl Mortensen 2015-04-28 13:31:41 -04:00
parent ab5a1c27d1
commit aa34be7fe0
3 changed files with 15 additions and 48 deletions

View File

@ -1,4 +1,4 @@
Last Updated: 21 April 2015 Last Updated: 27 April 2015
This file outlines what it takes to build Autopsy from source. This file outlines what it takes to build Autopsy from source.
@ -35,39 +35,20 @@ to the root 64-bit JRE directory.
2) Get Sleuth Kit Setup 2) Get Sleuth Kit Setup
2a) Download and build the release version of Libewf2 (20130119 or 2a) Download and build a Release version of Sleuth Kit (TSK) 4.0. See
later). All you need is the dll file. Note that you will get a
launching error if you use libewf 1.
- http://sourceforge.net/projects/libewf/
If you want to build the 64-bit version of The Sleuth Kit, download
our 64-bit version of libewf:
- https://github.com/sleuthkit/libewf_64bit
2b) Set LIBEWF_HOME environment variable to root directory of LIBEWF
2c) Download and install PostgreSQL 9.4 or above. The official releases are
from: http://www.postgresql.org/download/
2d) Set the POSTGRESQL_HOME_64 environment variable to point to the
PostgreSQL folder containing, but not including, the bin folder.
Example: POSTGRESQL_HOME_64=C:\Program Files\PostgreSQL\9.4
2d) Download and build a Release version of Sleuth Kit (TSK) 4.0. See
win32\BUILDING.txt in the TSK package for more information. You need to win32\BUILDING.txt in the TSK package for more information. You need to
build the tsk_jni project. Select the Debug_PostgreSQL x64 or build the tsk_jni project. Select the Release_PostgreSQL x64 target. You can
Release_PostgreSQL x64 target. You can use a released version or download use a released version or download the latest from github:
the latest from github:
- git://github.com/sleuthkit/sleuthkit.git - git://github.com/sleuthkit/sleuthkit.git
2e) Build the TSK JAR file by typing 'ant PostgreSQL' in bindings/java in the 2b) Build the TSK JAR file by typing 'ant PostgreSQL' in bindings/java in the
TSK source code folder from a command line. Note it is case sensitive. You TSK source code folder from a command line. Note it is case sensitive. You
can also add the code to a NetBeans project and build it from there, can also add the code to a NetBeans project and build it from there,
selecting the PostgreSQL target. For TSK, the default is SQLite, which is selecting the PostgreSQL target.
not enough for Autopsy. You must use the PostgreSQL target.
2f) Set TSK_HOME environment variable to the root directory of TSK 2c) Set TSK_HOME environment variable to the root directory of TSK
2g) On Non-Windows systems, you will need to do a 'make install' 2d) On Non-Windows systems, you will need to do a 'make install'
from the TSK root directory to install the libraries and such in from the TSK root directory to install the libraries and such in
the needed places (i.e. '/usr/local'). the needed places (i.e. '/usr/local').
@ -98,7 +79,6 @@ and by submitting pull requests to the main Autopsy repository.
5) Compile Autopsy 5) Compile Autopsy
5a) using Netbeans IDE: 5a) using Netbeans IDE:
- Start NetBeans IDE and open the Autopsy project. - Start NetBeans IDE and open the Autopsy project.
- To build Autopsy, PostgreSQL is required to be installed.
- Choose to build the Autopsy project / module. It is the highest level project - Choose to build the Autopsy project / module. It is the highest level project
that will cause the other modules to be compiled. that will cause the other modules to be compiled.
@ -116,15 +96,12 @@ the build process.
- The Sleuth Kit Java datamodel JAR file has native JNI libraries - The Sleuth Kit Java datamodel JAR file has native JNI libraries
that are copied into it. These JNI libraries have dependencies on that are copied into it. These JNI libraries have dependencies on
libewf and zlib. If you are using PostgreSQL, the dependencies are on libewf, libewf, zlib, libpq, libintl-8, libeay32, and ssleay32 DLL files. On non-Windows
zlib, libpq, libintl-8, libeay32, and ssleay32 DLL files. On non-Windows
platforms, the JNI library also has a dependency on libtsk (on Windows, platforms, the JNI library also has a dependency on libtsk (on Windows,
it is compiled into libtsk_jni). it is compiled into libtsk_jni).
- NetBeans uses ant to build Autopsy. The build target copies the - NetBeans uses ant to build Autopsy. The build target copies the
TSK datamodel JAR file into the project. If you want to use the TSK datamodel JAR file into the project.
debug version of the TSK dll, then there is a different ant target
in the TSK datamodel to copy the debug versions of the dlls.
- On a Windows system, the compile-time ant target copies the - On a Windows system, the compile-time ant target copies the
dependency libraries into the Autopsy code structure so that they can dependency libraries into the Autopsy code structure so that they can

View File

@ -29,7 +29,7 @@
<property name="win64.TskLib.path" value="${env.TSK_HOME}/win32/x64/Release"/> <property name="win64.TskLib.path" value="${env.TSK_HOME}/win32/x64/Release"/>
<property name="win32.TskLib.path" value="${env.TSK_HOME}/win32/Release" /> <property name="win32.TskLib.path" value="${env.TSK_HOME}/win32/Release" />
<property name="win64.TskLib.postgres_path" value="${env.POSTGRESQL_HOME_64}/bin"/> <property name="win64.TskLib.postgres_path" value="${env.TSK_HOME}/win32/x64/Release"/>
<available property="win64.TskLib.exists" type="dir" file="${win64.TskLib.path}" /> <available property="win64.TskLib.exists" type="dir" file="${win64.TskLib.path}" />
<available property="win32.TskLib.exists" type="dir" file="${win32.TskLib.path}" /> <available property="win32.TskLib.exists" type="dir" file="${win32.TskLib.path}" />
<available property="win64.TskLib_postgres.exists" type="dir" file="{win64.TskLib.postgres_path}" /> <available property="win64.TskLib_postgres.exists" type="dir" file="{win64.TskLib.postgres_path}" />

View File

@ -48,16 +48,6 @@
<echo> TSK_HOME: ${env.TSK_HOME}</echo> <echo> TSK_HOME: ${env.TSK_HOME}</echo>
</target> </target>
<!-- Verify that the POSTGRESQL_HOME_64 env variable is set -->
<target name="findPostgresHome64">
<property environment="env"/>
<condition property="postgresFound">
<isset property="env.POSTGRESQL_HOME_64"/>
</condition>
<fail unless="postgresFound" message="POSTGRESQL_HOME_64 must be set as an environment variable."/>
<echo> POSTGRESQL_HOME_64: ${env.POSTGRESQL_HOME_64}</echo>
</target>
<!-- This target will create a custom ZIP file for us. It first uses the general <!-- This target will create a custom ZIP file for us. It first uses the general
ZIP target and then opens it up and adds in any files that we want. This is where we customize the ZIP target and then opens it up and adds in any files that we want. This is where we customize the
version number. --> version number. -->
@ -173,7 +163,7 @@
</target> </target>
<!-- override build to add branding --> <!-- override build to add branding -->
<target name="build" depends="findPostgresHome64, build-brand,suite.build" description="Compiles autopsy and produces a basic branded build that can run on a dev. system" /> <target name="build" depends="build-brand,suite.build" description="Compiles autopsy and produces a basic branded build that can run on a dev system" />
<target name="build-brand" depends="-init"> <target name="build-brand" depends="-init">