TestDisk kompilieren

From CGSecurity
Jump to navigation Jump to search

En.png English De.png Deutsch Es.png Español Fr.png Français Ru.png Русский


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

Zurück zu TestDisk