TestDisk kompilieren
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 https://github.com/libyal/libewf. 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 http://www.ijg.org/files/jpegsrc.v6b.tar.gz herunter.
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 https://www.tuxera.com/
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 https://git.kernel.org/pub/scm/linux/kernel/git/jeffm/reiserfsprogs.git
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 https://upx.github.io/ 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