I am using the following DJGPP package
You can get this C compiler at http://www.delorie.com/djgpp.
I.e. if you have installed DJGPP in D:\gnu, add in your autoexec.bat,
set DJGPP=D:\gnu\djgpp.env set PATH=D:\GNU\BIN;%PATH%
In include/signal.h
, add
#ifndef SIGCONT #define SIGCONT 18 #endif
In include/mntent.h
, add
#ifndef MOUNTED #define MOUNTED "/etc/mtab" #endif #ifndef MNTOPT_RO #define MNTOPT_RO "ro" #endif
In include/errno.h
, add
#ifndef EMSGSIZE #define EMSGSIZE 90 #endif #ifndef EOPNOTSUPP #define EOPNOTSUPP 95 #endif #ifndef ENOTSUPP #define ENOTSUPP 524 #endif #ifndef ENOTSUP #define ENOTSUP 524 #endif #ifndef ECANCELED #define ECANCELED 125 #endif #ifndef EILSEQ #define EILSEQ 84 #endif #ifndef EOVERFLOW #define EOVERFLOW 600 #endif
In include/fcntl.h
, add
#define O_LARGEFILE 0100000
Add the file include/stdint.h
typedef unsigned char uint8_t; typedef unsigned short int uint16_t; typedef unsigned int uint32_t; typedef unsigned long long int uint64_t; typedef char int8_t; typedef short int int16_t; typedef int int32_t; typedef long long int int64_t;
ln -s gpp.exe g++.exe
TestDisk is a true 32-bit program (compiled under DJGPP), so a DPMI server program (cwsdpmi.exe) is included in the download which allows TestDisk to run under 16-bit DOS. If you want to work under real (16-bit) DOS, you'll need to have a DPMI server running; to do that, get: csdpmi*b.zip and simply place the executable (cwsdpmi.exe) in your bin directory (which must be in the PATH).
Back to TestDisk compilation