Sophie

Sophie

distrib > Mandriva > 2008.1 > x86_64 > by-pkgid > 483d8f4b80d4f76e276b5146582f70e5 > files > 44

testdisk-6.9-2mdv2008.1.x86_64.rpm

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en" dir="ltr">
	<head>
		<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
				<meta name="keywords" content="Compile DOS,TestDisk Compilation" />
		<link rel="shortcut icon" href="favicon.ico" />
		<link rel="search" type="application/opensearchdescription+xml" href="opensearch_desc.php" title="CGSecurity (English)" />
		
		<link rel="copyright" href="http://www.gnu.org/copyleft/fdl.html" />
		<title>Compile DOS - CGSecurity</title>
		<style type="text/css" media="screen, projection">/*<![CDATA[*/
			@import "shared.css_97.css";
			@import "main.css_97.css";
		/*]]>*/</style>
		<link rel="stylesheet" type="text/css" media="print" href="commonprint.css_97.css" />
		<!--[if lt IE 5.5000]><style type="text/css">@import "ie50fixes.css_97.css";</style><![endif]-->
		<!--[if IE 5.5000]><style type="text/css">@import "ie55fixes.css_97.css";</style><![endif]-->
		<!--[if IE 6]><style type="text/css">@import "ie60fixes.css_97.css";</style><![endif]-->
		<!--[if IE 7]><style type="text/css">@import "ie70fixes.css_97.css";</style><![endif]-->
		<!--[if lt IE 7]><script type="text/javascript" src="iefixes.js_97"></script>
		<meta http-equiv="imagetoolbar" content="no" /><![endif]-->
		
		<script type= "text/javascript">/*<![CDATA[*/
var skin = "monobook";
var stylepath = "/mw/skins";
var wgArticlePath = "/wiki/$1";
var wgScriptPath = "/mw";
var wgScript = "/mw/index.php";
var wgServer = "http://www.cgsecurity.org";
var wgCanonicalNamespace = "";
var wgCanonicalSpecialPageName = false;
var wgNamespaceNumber = 0;
var wgPageName = "Compile_DOS";
var wgTitle = "Compile DOS";
var wgAction = "view";
var wgRestrictionEdit = [];
var wgRestrictionMove = [];
var wgArticleId = "1287";
var wgIsArticle = true;
var wgUserName = null;
var wgUserGroups = null;
var wgUserLanguage = "en";
var wgContentLanguage = "en";
var wgBreakFrames = false;
var wgCurRevisionId = "1477";
/*]]>*/</script>
                
		<script type="text/javascript" src="wikibits.js_97"><!-- wikibits js --></script>
		<script type="text/javascript" src="http://www.cgsecurity.org/mw/index.php?title=-&amp;action=raw&amp;gen=js&amp;useskin=monobook"><!-- site js --></script>
		<style type="text/css">/*<![CDATA[*/
@import "Common.css";
@import "Monobook.css";
@import "dyn.css";
/*]]>*/</style>
		<!-- Head Scripts -->
		<script type="text/javascript" src="ajax.js_97"></script>
	</head>
<body  class="mediawiki ns-0 ltr page-Compile_DOS">
	<div id="globalWrapper">
		<div id="column-content">
	<div id="content">
		<a name="top" id="top"></a>
				<h1 class="firstHeading">Compile DOS</h1>
		<div id="bodyContent">
			<h3 id="siteSub">From CGSecurity</h3>
			<div id="contentSub"></div>
									<div id="jump-to-nav">Jump to: <a href="#column-one">navigation</a>, <a href="#searchInput">search</a></div>			<!-- start content -->
			<a name="Packages_for_DJGPP"></a><h2> <span class="mw-headline"> Packages for DJGPP </span></h2>
<p>I am using the following DJGPP package
</p>
<ul><li>GNU Binutils 2.11.2 binaries for DJGPP
</li><li>bsh204d GNU Bash 2.04 binary for DJGPP
</li><li>bsn129b GNU bison 1.34 for DJGPP V2
</li><li>csdpmi5b CWSDPMI binary distribution (release 5)
</li><li>dif272b GNU Diffutils 2.7.2 for DJGPP V2
</li><li>djdev203 Development Kit and Runtime
</li><li>faq230b DJGPP FAQ List edition 2.30 for DJGPP v2.03
</li><li>fil40b GNU Fileutils 4.0 for DJGPP 2.x, release 3 (binaries)
</li><li>File(1) 3.34: binaries
</li><li>find41b GNU findutils 4.1 for DJGPP V2
</li><li>flx254b GNU Flex 2.5.4 binaries for DJGPP V2
</li><li>gcc304b.zip&nbsp;: GCC 3.0.4 C compiler binaries for DJGPP
</li><li>gdb500b GDB GNU Debugger version 5.0 binaries for DJGPP v2
</li><li>gpp302b.zip&nbsp;: GCC 3.0.2 C++ compiler binaries for DJGPP
</li><li>grep24b GNU grep 2.4 binaries for DJGPP V2
</li><li>gwk306b GNU Awk 3.0.6 for DJGPP v2
</li><li>libt143d.zip libtool
</li><li>m4-14b GNU M4 1.4 binaries for DJGPP v2
</li><li>mak3791b GNU Make 3.79.1 binaries for DJGPP V2
</li><li>mlp107b Executable File Packer for DJGPP V2
</li><li>objc302b.zip&nbsp;: GCC 3.0.2 Objective C compiler binaries for DJGPP
</li><li>pdcur24b.zip PDCurses 2.4 binary for DJGPP
</li><li>perl561b Perl 5.6.1b for DJGPP V2 (binary)
</li><li>sed3028b GNU sed 3.02.80 for DJGPP V2
</li><li>shl112b GNU sh-utils 1.12 for DJGPP V2
</li><li>tar112ab GNU tar 1.12a binaries for DJGPP V2
</li><li>txi40b GNU Texinfo 4.0 binaries for DJGPP V2
</li><li>txt20b GNU Textutils 2.0 binaries for DJGPP V2
</li><li>Which version 2.11 modified to work with DJGPP by David Cullen
</li></ul>
<p>You can get this C compiler at <a href="http://www.delorie.com/djgpp" class="external free" title="http://www.delorie.com/djgpp" rel="nofollow">http://www.delorie.com/djgpp</a>.
</p><p>I.e. if you have installed DJGPP in D:\gnu, add in your autoexec.bat,
</p>
<pre>
set DJGPP=D:\gnu\djgpp.env
set PATH=D:\GNU\BIN;%PATH%
</pre>
<a name="Patching_DJGPP"></a><h2> <span class="mw-headline"> Patching DJGPP</span></h2>
<p>In <code>include/signal.h</code>, add
</p>
<pre>
#ifndef SIGCONT
#define SIGCONT 18
#endif
</pre>
<p>In <code>include/mntent.h</code>, add
</p>
<pre>
#ifndef MOUNTED
#define MOUNTED &quot;/etc/mtab&quot;
#endif
#ifndef MNTOPT_RO
#define MNTOPT_RO &quot;ro&quot;
#endif
</pre>
<p>In <code>include/errno.h</code>, add
</p>
<pre>
#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
</pre>
<p>In <code>include/fcntl.h</code>, add
</p>
<pre>
#define O_LARGEFILE     0100000
</pre>
<p>In <code>sys/param.h</code>, add
</p>
<pre>
/* Some autoconf'd packages check for endianness.  When cross-building we
   can't run programs on the target.  Fortunately, autoconf supports the
   definition of byte order in sys/param.h (that's us!).
   The values here are the same as used in gdb/defs.h (are the more
   appropriate values?).  */
#define BIG_ENDIAN      4321
#define LITTLE_ENDIAN   1234
/* All known dos systems are little endian.  */
#define BYTE_ORDER      LITTLE_ENDIAN
</pre>
<p>Add the file <code>include/stdint.h</code>
</p>
<pre>
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;
</pre>
<p><code>ln -s gpp.exe g++.exe</code>
</p><p>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 <b><i>real</i></b> (16-bit) <b>DOS</b>, you'll need to have a DPMI server running; to do that, get: <b>csdpmi*b.zip</b> and simply
place the executable (cwsdpmi.exe) in your bin directory (which must be in the PATH).
</p><p>Back to <a href="testdisk_compilation.html" title="TestDisk Compilation">TestDisk compilation</a>
</p>
<!-- Saved in parser cache with key cg_mw-mw_:pcache:idhash:1287-0!1!0!!en!2!edit=0 and timestamp 20071123143432 -->
			<div id="catlinks"><p class='catlinks'><a href="http://www.cgsecurity.org/wiki/Special:Categories" title="Special:Categories">Category</a>: <span dir='ltr'><a href="http://www.cgsecurity.org/wiki/Category:Data_Recovery" title="Category:Data Recovery">Data Recovery</a></span></p></div>			<!-- end content -->
			<div class="visualClear"></div>
		</div>
	</div>
		</div>
		<div id="column-one">
	<div class="portlet" id="p-logo">
		<a style="background-image: url(logo.png);" href="http://www.cgsecurity.org/" title="Visit the Main Page [z]" accesskey="z"></a>
	</div>
	<script type="text/javascript"> if (window.isMSIE55) fixalpha(); </script>
		<div class='portlet' id='p-Data_Recovery'>
		<h5>Data Recovery</h5>
		<div class='pBody'>
			<ul>
				<li id="n-TestDisk"><a href="testdisk.html">TestDisk</a></li>
				<li id="n-PhotoRec"><a href="photorec.html">PhotoRec</a></li>
				<li id="n-Download"><a href="testdisk_download.html">download</a></li>
			</ul>
		</div>
	</div>
		</div><!-- end of the left (by default at least) column -->
			<div class="visualClear"></div>
			<div id="footer">
				<div id="f-copyrightico"><a href="http://www.gnu.org/copyleft/fdl.html"><img src="gnu_fdl.png" alt='GNU Free Documentation License 1.2' /></a></div>
			<ul id="f-list">
				<li id="lastmod"> This page was last modified 07:59, 14 March 2006.</li>
				<li id="copyright">Content is available under <a href="http://www.gnu.org/copyleft/fdl.html" class="external " title="http://www.gnu.org/copyleft/fdl.html" rel="nofollow">GNU Free Documentation License 1.2</a>.</li>
			</ul>
		</div>
		
	
		<script type="text/javascript">if (window.runOnloadHook) runOnloadHook();</script>
</div>
</body><!-- Cached 20071123143432 -->
</html>