1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91
|
Dependencies
Libewf requires:
* zlib
* lybcrypto (OpenSSL)
or Windows Crypto API from the Windows Platform SDK
Static compilation
Creating a static library
./configure --enable-shared=no
Creating static executables
CFLAGS=-static ./configure
Creating a libewf DLL
Currently 2 methods of creating a libewf DLL are supported:
* using libtool
* using Microsoft Visual Studio C++
Creating a libewf DLL using libtool
You'll need Cygwin of MingW with a libtool version that supports
building DLLs.
By building the library:
./configure
make libewf
You should end up with a DLL something like:
libewf-<version>/libewf/.libs/cygewf-0.dll
Creating a libewf DLL using Microsoft Visual Studio C++
You'll need:
* Microsoft Visual Studio C++
The provided Visual Studio project files were created using
the 2005 express version. The express verion is available on the
Microsoft website
* Microsoft Platform API for the Windows Crypto API
The platform API verion is available on the Microsoft website
* The zlib DLL package including the .lib file available from the zlib
project site: http://www.gzip.org/zlib/
Extract the contents of the zlib DLL package to:
libewf-<version>/msvscpp/zlib
You should be able to build the libewf DLL using the provided
project files. Note that the project files contain a debug and release
configuration.
Using libewf DLL
Make sure you use define LIBEWF_DLL_IMPORT before including <libewf.h>,
i.e. CFLAGS=-DLIBEWF_DLL_IMPORT
When the libewf DLL was build with Microsoft Visual Studio
you'll need the zlib DLL. To run the executables on other platforms
than the build platform, you'll need the Microsoft Visual Studio redistributable DLLs.
If you want to create your own Microsoft Visual Studio project files note that libewf needs
to be compiled with the paramete /MD, because stderr is passed from the executables.
Mac OS X
* missing libtoolize
* building multiple architure binaries
Missing libtoolize
Use glibtoolize instead
Building multiple architecture binaries
I.e. on Mac OS X 10.4 run the following commands:
CFLAGS="-isysroot /Developer/SDKs/MacOSX10.4u.sdk -arch ppc -arch i386" LDFLAGS="-Wl,-syslibroot,/Developer/SDKs/MacOSX10.4u.sdk -arch ppc -arch i386" ./configure --disable-dependency-tracking --prefix=$PWD/macosx/tmp/
make
make install
The binaries are installed in $PWD/macosx/tmp/
Cygwin
* libuuid support
libuuid support
Install the e2fsprogs package and run the following commands:
LDFLAGS=-L/usr/lib/e2fsprogs ./configure
make
make install
|