<!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="Compilar DOS,TestDisk Compilacion" /> <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>Compilar 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 = "Compilar_DOS"; var wgTitle = "Compilar DOS"; var wgAction = "view"; var wgRestrictionEdit = []; var wgRestrictionMove = []; var wgArticleId = "1806"; var wgIsArticle = true; var wgUserName = null; var wgUserGroups = null; var wgUserLanguage = "en"; var wgContentLanguage = "en"; var wgBreakFrames = false; var wgCurRevisionId = "3089"; /*]]>*/</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=-&action=raw&gen=js&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-Compilar_DOS"> <div id="globalWrapper"> <div id="column-content"> <div id="content"> <a name="top" id="top"></a> <h1 class="firstHeading">Compilar 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="Paquetes_para_DJGPP"></a><h2> <span class="mw-headline"> Paquetes para DJGPP </span></h2> <p>Estoy utilizando el siguiente paquete DJGPP </p> <ul><li>GNU Binutils 2.11.2 binarios para DJGPP </li><li>bsh204d GNU Bash 2.04 binarios para DJGPP </li><li>bsn129b GNU bison 1.34 para DJGPP V2 </li><li>csdpmi5b CWSDPMI distribución binaria (release 5) </li><li>dif272b GNU Diffutils 2.7.2 para DJGPP V2 </li><li>djdev203 Kit de Desarrollo y Runtime </li><li>faq230b DJGPP Lista de FAQ edición 2.30 para DJGPP v2.03 </li><li>fil40b GNU Fileutils 4.0 para DJGPP 2.x, release 3 (binarios) </li><li>File(1) 3.34: binarios </li><li>find41b GNU findutils 4.1 para DJGPP V2 </li><li>flx254b GNU Flex 2.5.4 binarios para DJGPP V2 </li><li>gcc304b.zip : GCC 3.0.4 C binarios del compilador para DJGPP </li><li>gdb500b GDB GNU Debugger versión 5.0 binarios para DJGPP v2 </li><li>gpp302b.zip : GCC 3.0.2 C++ binarios del compilador para DJGPP </li><li>grep24b GNU grep 2.4 binarios para DJGPP V2 </li><li>gwk306b GNU Awk 3.0.6 para DJGPP v2 </li><li>libt143d.zip libtool </li><li>m4-14b GNU M4 1.4 binarios para DJGPP v2 </li><li>mak3791b GNU Make 3.79.1 binarios para DJGPP V2 </li><li>mlp107b Executable File Packer para DJGPP V2 </li><li>objc302b.zip : GCC 3.0.2 Objective C binarios del compilador para DJGPP </li><li>pdcur24b.zip PDCurses 2.4 binario para DJGPP </li><li>perl561b Perl 5.6.1b para DJGPP V2 (binario) </li><li>sed3028b GNU sed 3.02.80 para DJGPP V2 </li><li>shl112b GNU sh-utils 1.12 para DJGPP V2 </li><li>tar112ab GNU tar 1.12a binarios para DJGPP V2 </li><li>txi40b GNU Texinfo 4.0 binarios para DJGPP V2 </li><li>txt20b GNU Textutils 2.0 binarios para DJGPP V2 </li><li>Which versión 2.11 modificado para trabajar con DJGPP por David Cullen </li></ul> <p>Puede obtener este compilador de C en <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>Ej. si ya tiene instalado DJGPP en D:\gnu, agregue en su 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>En <code>include/signal.h</code>, agregar </p> <pre> #ifndef SIGCONT #define SIGCONT 18 #endif </pre> <p>En <code>include/mntent.h</code>, agregar </p> <pre> #ifndef MOUNTED #define MOUNTED "/etc/mtab" #endif #ifndef MNTOPT_RO #define MNTOPT_RO "ro" #endif </pre> <p>En <code>include/errno.h</code>, agregar </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>En <code>include/fcntl.h</code>, agregar </p> <pre> #define O_LARGEFILE 0100000 </pre> <p>En <code>sys/param.h</code>, agregar </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>Agregar el archivo <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 es un programa verdaderamente 32 Bit (compilado bajo DJGPP), así que un programa servidor DPMI (cwsdpmi.exe) está includeído en la descarga el cual le permite a TestDisk ser ejecutado en un DOS de 16 Bits. Si desea trabajar bajo <b>DOS</b> (16-bit) <b><i>real</i></b>, va a necesitar tener un servidor de DPMI ejecutándose; para hacer esto, obtenga: <b>csdpmi*b.zip</b> y simplemente ponga el ejecutable (cwsdpmi.exe) en su directorio bin (el cual debe estar en el PATH). </p><p>Volver a <a href="testdisk_compilacion.html" title="TestDisk Compilacion"> Compilación de TestDisk</a> </p> <!-- Saved in parser cache with key cg_mw-mw_:pcache:idhash:1806-0!1!0!!en!2!edit=0 and timestamp 20071124191759 --> <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 17:48, 24 November 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 20071124191759 --> </html>