TestDisk Kompilation
From CGSecurity
Dieses Dokument erklärt, wie TestDisk und PhotoRec zu kompilieren sind.
Contents |
Libraries (Bibliotheken)
- libncurses - Erforderlich, TestDisk und PhotoRec verwenden die ncurses-Schnittstelle, so dass ncurses-Bibliotheks- und Entwicklungsdateien vorhanden sein müssen.
- Ext2fs library - Optional, von TestDisk verwendet, um Dateien von ext2/ext3-Partitionen aufzulisten
- Reiserfs library - Optional, von TestDisk verwendet, um Dateien von reiserfs-Partitionen aufzulisten
- NTFS library - Optional, verwendet von TestDisk, um Dateien von NTFS-Partitionen aufzulisten
- Jpeg library - Optional, verwendet von PhotoRec für eine verbesserter JPEG-Wiederherstellungsrate
Ext2fs Library
Ext2fs library is usually installed with your OS, so you don't need to compile it yourself. Otherwise get latest version of e2fsprogs at http://e2fsprogs.sourceforge.net
tar xvf e2fsprogs-1.38.tgz cd e2fsprogs-1.38 ./configure --with-cc=gcc make libs make install
Jpeg library
Libjpeg library is usually installed with your OS, so you don't need to compile it yourself.
Otherwise download libjpeg source from ftp://ftp.uu.net/graphics/jpeg/jpegsrc.v6b.tar.gz
tar xzf jpegsrc.v6b.tar.gz cd jpeg-6b ./configure --enable-shared --enable-static make sudo make install
Mac OS X 10.3 ships with GNU libtool, albeit under a slightly different name, glibtool. You may have to run
ln -s `which glibtool` ./libtool
How to compile ntfsprogs
Get the latest version of ntfsprogs from http://linux-ntfs.sf.net/
tar xzf ntfsprogs-1.13.0.tar.gz cd ntfsprogs-1.13.0 ./configure make libs make install
To get a working version under NT 4, use configure --disable-default-device-io-ops
because SetFilePointerEx used by win32_io.c is not exported by NT 4 DLL.
ReiserFS Library
Get progsreiserfs-0.3.1-rc8.tar.gz at http://reiserfs.osdn.org.ua/
tar xzf progsreiserfs-*.tar.gz cd progreiserfs-0.3.1-rc8 ./configure --disable-nls make make install
How to compile TestDisk
Standard method
To compile TestDisk and PhotoRec, run
./configure make
You may need to specify parameters to configure, see configure --help.
Example:
./configure --with-reiserfs-lib=/home/kmaster/perso/testdisk-5.2/progsreiserfs-0.3.1-rc8/libreiserfs/.libs/ --with-reiserfs-includes=/home/kmaster/perso/testdisk-5.2/progsreiserfs-0.3.1-rc8/include/ --with-ntfs-lib=/home/kmaster/perso/testdisk-5.2/ntfsprogs-1.8.5/libntfs/.libs/ --with-ntfs-includes=/home/kmaster/perso/testdisk-5.2/ntfsprogs-1.8.5/include/ --with-ext2fs-lib=/home/kmaster/perso/testdisk-5.2/e2fsprogs-1.34/lib --with-ext2fs-includes=/home/kmaster/perso/testdisk-5.2/e2fsprogs-1.34/lib
Static version
If you need to run the binary on systems that lack one of the previous libraries, create a static binary with
make static
Static compressed binary
If you need a small binary for binary distribution, get the UPX packer at http://upx.sourceforge.net/ and run
strip src/testdisk src/photorec upx src/testdisk src/photorec
Note that Linux UPX needs to decompress program files before running, and it will request some space on /tmp to do this. The running executable must be allowed in this directory (mount -o remount,exec /tmp).
OS Notes
Please read notes about your OS:
Cross-compilation
- Linux to PowerPC Darwin/MacOSX cross-compiler
Zurück zu TestDisk