# TestDisk kompilieren

### From CGSecurity

english version deutsche Version versión español version française Русская версия

Dieses Dokument erklärt, wie TestDisk und PhotoRec zu kompilieren sind.

## Systemspezifische Anmerkungen

### DOS

TestDisk & PhotoRec kann unter Verwendung von DJGGP für DOS/Win9x kompiliert werden. Bitte lese DOS für mehr Informationen.

### Mac OS X

Um TestDisk & PhotoRec zu kompilieren, sollte der `Apple Development Kit` von der Mac OS X - DVD installiert werden. Siehe auch Mac OS X für zusätzliche Anmerkungen.

### Linux

- Debian, Ubuntu: `apt-get install build-essential e2fslibs-dev libncurses5-dev libncursesw5-dev libntfs-dev libjpeg62-dev libreiserfs0.3-dev uuid-dev zlib1g-dev`
- Fedora, RedHat Enterprise, CentOS: `yum install ncurses-devel e2fsprogs-devel libjpeg-devel ntfsprogs-devel libewf-devel zlib-devel`
- Mandriva: `urpmi ncurses-devel e2fsprogs-devel jpeg-devel libntfs-devel zlib-devel openssl-devel libewf-devel`
- OpenSuse: install `ncurses-devel e2fsprogs-devel libjpeg-devel ntfsprogs-devel zlib-devel openssl-devel libreiserfs-devel libuuid-devel`

Lese auch Linux kompilieren für mehr Information.

### Windows

Benutze den freien C/C++ Cygwin compiler um die Windows-Version (Windows NT 4/Windows 2000/XP/2003/Vista...) zu erzeugen.
Es ist auch möglich den MinGW-Compiler zu benutzen, aber einige Funktionalitäten/Bibliotheken werden nicht vorhanden sein. Lese auch Win kompilieren für zusätzliche Einzelheiten.

## 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
- EWF library - Optional, von TestDisk und PhotoRec benutzt, um auf Expert Witness Compression Format-Dateien (d.h. Encase-Dateien) zuzugreifen
- 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-Bibliothek

Ext2fs-Bibliothek ist normalerweise mit dem Betriebssystem installiert, so dass sie nicht selbst kompiliert werden muss. Ansonsten besorge die neueste Version von e2fsprogs über e2fsprogs.sf.net

    tar xzf e2fsprogs-1.38.tgz
    cd e2fsprogs-1.38
    ./configure --with-cc=gcc
    make libs
    make install

### EWF-Bibliothek

EWF-Quellcode kann heruntergeladen werden von http://libewf.sourceforge.net/. Beachte bitte, das openssl und zlib für eine erfolgreiche Kompilierung und Ausführung erforderlich sind.

    tar xzf libewf-beta-20070408.tar.gz
    cd libewf-20070408
    ./configure
    make libs
    make install

### Jpeg-Bibliothek

Die Libjpeg-Bibliothek wird normalerweise mit dem Betriebssystem installiert, so dass sie nicht selbst kompiliert werden muß. Ansonsten lade die neueste libjpeg-Version von ftp.uu.net/graphics/jpeg/jpegsrc.v6b.tar.gzherunter.

    tar xzf jpegsrc.v6b.tar.gz
    cd jpeg-6b
    ./configure --enable-shared --enable-static
    make
    sudo make install

Mac OS X 10,3 liefert das GNU libtool, wenn auch unter einem leicht anderen Namen als "glibtool", mit. Führe bitte folgendes aus

    ln -s `which glibtool` ./libtool

### Wie werden ntfsprogs kompiliert

Erhalte die neueste Version von ntfsprogs von linux-ntfs.sf.net

    tar xzf ntfsprogs-1.13.0.tar.gz
    cd ntfsprogs-1.13.0
    ./configure
    make libs
    make install

Um eine funktionierende Version unter NT 4 zu erhalten, verwende `configure --disable-default-device-io-ops` da SetFilePointerEx, benutzt von win32_io.c, nicht von der NT 4 DLL exportiert wird.

### ReiserFS-Bibliothek

Erhalte progsreiserfs-0.3.1-rc8.tar.gz bei reiserfs.osdn.org.ua

    tar xzf progsreiserfs-*.tar.gz
    cd progreiserfs-0.3.1-rc8
    ./configure --disable-nls
    make
    make install

## Wie TestDisk zu kompilieren ist

### Standard-Methode

Um TestDisk und PhotoRec zu kompilieren, führe folgendes aus

    ./configure
    make

Es kann sein, daß einige Parameter zum Konfigurieren angegeben (spezifiziert) werden müssen, siehe configure --help.
Beispiel:

    ./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

### Statische Version

Wenn die Binärdatei auf Systemen ausgeführt werden muß, bei denen eine der vorherigen Bibliotheken fehlt, erstelle eine statische Binärdatei mit

    make static

### Statisch komprimierte Binärdatei

Wenn du eine kleine Binärdatei für eine Binär-Distribution benötigst, hole den UPX-Packer von upx.sf.net und führe aus

    strip src/testdisk src/photorec
    upx src/testdisk src/photorec

## Kreuz-Kompilation

- Linux zu PowerPC Darwin/Mac OS X - Kreuz-Compiler

Zurück zu TestDisk

Category: Data Recovery