home *** CD-ROM | disk | FTP | other *** search
/ Chip 2000 May / Chip_2000-05_cd1.bin / zkuste / Perl / ActivePerl-5.6.0.613.msi / 䆊䌷䈹䈙䏵-䞅䞆䞀㡆䞃䄦䠥 / _c4c41fd29b27bc57d42445820806f0ff < prev    next >
Text File  |  2000-03-23  |  8KB  |  213 lines

  1. <HTML>
  2. <HEAD>
  3. <TITLE>perldos - Perl under DOS, W31, W95.</TITLE>
  4. <LINK REL="stylesheet" HREF="../../Active.css" TYPE="text/css">
  5. <LINK REV="made" HREF="mailto:">
  6. </HEAD>
  7.  
  8. <BODY>
  9. <TABLE BORDER=0 CELLPADDING=0 CELLSPACING=0 WIDTH=100%>
  10. <TR><TD CLASS=block VALIGN=MIDDLE WIDTH=100% BGCOLOR="#cccccc">
  11. <STRONG><P CLASS=block> perldos - Perl under DOS, W31, W95.</P></STRONG>
  12. </TD></TR>
  13. </TABLE>
  14.  
  15. <A NAME="__index__"></A>
  16. <!-- INDEX BEGIN -->
  17.  
  18. <UL>
  19.  
  20.     <LI><A HREF="#name">NAME</A></LI>
  21.     <LI><A HREF="#synopsis">SYNOPSIS</A></LI>
  22.     <LI><A HREF="#description">DESCRIPTION</A></LI>
  23.     <UL>
  24.  
  25.         <LI><A HREF="#prerequisites">Prerequisites</A></LI>
  26.         <LI><A HREF="#shortcomings of perl under dos">Shortcomings of Perl under DOS</A></LI>
  27.         <LI><A HREF="#building">Building</A></LI>
  28.         <LI><A HREF="#testing">Testing</A></LI>
  29.         <LI><A HREF="#installation">Installation</A></LI>
  30.     </UL>
  31.  
  32.     <LI><A HREF="#author">AUTHOR</A></LI>
  33.     <LI><A HREF="#see also">SEE ALSO</A></LI>
  34. </UL>
  35. <!-- INDEX END -->
  36.  
  37. <HR>
  38. <P>
  39. <H1><A NAME="name">NAME</A></H1>
  40. <P>perldos - Perl under DOS, W31, W95.</P>
  41. <P>
  42. <HR>
  43. <H1><A NAME="synopsis">SYNOPSIS</A></H1>
  44. <P>These are instructions for building Perl under DOS (or w??), using
  45. DJGPP v2.01 or later. Under w95 long filenames are supported.</P>
  46. <P>
  47. <HR>
  48. <H1><A NAME="description">DESCRIPTION</A></H1>
  49. <P>Before you start, you should glance through the README file
  50. found in the top-level directory where the Perl distribution
  51. was extracted.  Make sure you read and understand the terms under
  52. which this software is being distributed.</P>
  53. <P>This port currently supports MakeMaker (the set of modules that
  54. is used to build extensions to perl).  Therefore, you should be
  55. able to build and install most extensions found in the CPAN sites.</P>
  56. <P>
  57. <H2><A NAME="prerequisites">Prerequisites</A></H2>
  58. <DL>
  59. <DT><STRONG><A NAME="item_DJGPP">DJGPP</A></STRONG><BR>
  60. <DD>
  61. DJGPP is a port of GNU C/C++ compiler and development tools to 32-bit,
  62. protected-mode environment on Intel 32-bit CPUs running MS-DOS and compatible
  63. operating systems, by DJ Delorie <<A HREF="mailto:dj@delorie.com">dj@delorie.com</A>> and friends.
  64. <P>For more details (FAQ), check out the home of DJGPP at:</P>
  65. <PRE>
  66.         <A HREF="http://www.delorie.com/djgpp/">http://www.delorie.com/djgpp/</A></PRE>
  67. <P>If you have questions about DJGPP, try posting to the DJGPP newsgroup:
  68. comp.os.msdos.djgpp, or use the email gateway <A HREF="mailto:djgpp@delorie.com.">djgpp@delorie.com.</A></P>
  69. <P>You can find the full DJGPP distribution on any SimTel.Net mirror all over
  70. the world. Like:</P>
  71. <PRE>
  72.         <A HREF="ftp://ftp.simtel.net/pub/simtelnet/gnu/djgpp/v2">ftp://ftp.simtel.net/pub/simtelnet/gnu/djgpp/v2</A>*</PRE>
  73. <P>You need the following files to build perl (or add new modules):</P>
  74. <PRE>
  75.         v2/djdev202.zip
  76.         v2/bnu27b.zip
  77.         v2gnu/gcc2721b.zip
  78.         v2gnu/bsh1147b.zip
  79.         v2gnu/mak3761b.zip
  80.         v2gnu/fil316b.zip
  81.         v2gnu/sed118b.zip
  82.         v2gnu/txt122b.zip
  83.         v2gnu/dif271b.zip
  84.         v2gnu/grep21b.zip
  85.         v2gnu/shl112b.zip
  86.         v2gnu/gawk303b.zip
  87.         v2misc/csdpmi4b.zip</PRE>
  88. <P>or possibly any newer version.</P>
  89. <P></P>
  90. <DT><STRONG><A NAME="item_Pthreads">Pthreads</A></STRONG><BR>
  91. <DD>
  92. Thread support is not tested in this version of the djgpp perl.
  93. <P></P></DL>
  94. <P>
  95. <H2><A NAME="shortcomings of perl under dos">Shortcomings of Perl under DOS</A></H2>
  96. <P>Perl under DOS lacks some features of perl under UNIX because of
  97. deficiencies in the UNIX-emulation, most notably:</P>
  98. <UL>
  99. <LI>
  100. <A HREF="../../lib/Pod/perlfunc.html#item_fork"><CODE>fork()</CODE></A> and <A HREF="../../lib/Pod/perlfunc.html#item_pipe"><CODE>pipe()</CODE></A>
  101. <P></P>
  102. <LI>
  103. some features of the UNIX filesystem regarding link count and file dates
  104. <P></P>
  105. <LI>
  106. in-place operation is a little bit broken with short filenames
  107. <P></P>
  108. <LI>
  109. sockets
  110. <P></P></UL>
  111. <P>
  112. <H2><A NAME="building">Building</A></H2>
  113. <UL>
  114. <LI>
  115. Unpack the source package <EM>perl5.6*.tar.gz</EM> with djtarx. If you want
  116. to use long file names under w95, don't forget to use
  117. <PRE>
  118.         set LFN=y</PRE>
  119. <P>before unpacking the archive.</P>
  120. <P></P>
  121. <LI>
  122. Create a ``symlink'' or copy your bash.exe to sh.exe in your <CODE>($DJDIR)/bin</CODE>
  123. directory.
  124. <PRE>
  125.         ln -s bash.exe sh.exe</PRE>
  126. <P>And make the <CODE>SHELL</CODE> environment variable point to this <EM>sh.exe</EM>:</P>
  127. <PRE>
  128.         set SHELL=c:/djgpp/bin/sh.exe (use full path name!)</PRE>
  129. <P>You can do this in <EM>djgpp.env</EM> too. Add this line BEFORE any section
  130. definition:</P>
  131. <PRE>
  132.         +SHELL=%DJDIR%/bin/sh.exe</PRE>
  133. <P></P>
  134. <LI>
  135. If you have <EM>split.exe</EM> and <EM>gsplit.exe</EM> in your path, then rename 
  136. <EM>split.exe</EM> to <EM>djsplit.exe</EM>, and <EM>gsplit.exe</EM> to <EM>split.exe</EM>.
  137. Copy or link <EM>gecho.exe</EM> to <EM>echo.exe</EM> if you don't have <EM>echo.exe</EM>.
  138. Copy or link <EM>gawk.exe</EM> to <EM>awk.exe</EM> if you don't have <EM>awk.exe</EM>.
  139. <P></P>
  140. <LI>
  141. Chdir to the djgpp subdirectory of perl toplevel and type the following
  142. command:
  143. <PRE>
  144.         configure.bat</PRE>
  145. <P>This will do some preprocessing then run the Configure script for you.
  146. The Configure script is interactive, but in most cases you
  147. just need to press ENTER.</P>
  148. <P>If the script says that your package is incomplete, and asks whether
  149. to continue, just answer with Y (this can only happen if you don't use
  150. long filenames).</P>
  151. <P>When Configure asks about the extensions, I suggest IO and Fcntl,
  152. and if you want database handling then SDBM_File or GDBM_File
  153. (you need to install gdbm for this one). If you want to use the
  154. POSIX extension (this is the default), make sure that the stack
  155. size of your <EM>cc1.exe</EM> is at least 512kbyte (you can check this
  156. with: <CODE>stubedit cc1.exe</CODE>).</P>
  157. <P>You can use the Configure script in non-interactive mode too.
  158. When I built my <EM>perl.exe</EM>, I used something like this:</P>
  159. <PRE>
  160.         configure.bat -des</PRE>
  161. <P>You can find more info about Configure's command line switches in
  162. the <EM>INSTALL</EM> file.</P>
  163. <P>When the script ends, and you want to change some values in the
  164. generated <EM>config.sh</EM> file, then run</P>
  165. <PRE>
  166.         sh Configure -S</PRE>
  167. <P>after you made your modifications.</P>
  168. <P>IMPORTANT: if you use this <CODE>-S</CODE> switch, be sure to delete the CONFIG
  169. environment variable before running the script:</P>
  170. <PRE>
  171.         set CONFIG=</PRE>
  172. <P></P>
  173. <LI>
  174. Now you can compile Perl. Type:
  175. <PRE>
  176.         make</PRE>
  177. <P></P></UL>
  178. <P>
  179. <H2><A NAME="testing">Testing</A></H2>
  180. <P>Type:</P>
  181. <PRE>
  182.         make test</PRE>
  183. <P>If you're lucky you should see ``All tests successful''. But there can be
  184. a few failed subtests (less than 5 hopefully) depending on some external
  185. conditions (e.g. some subtests fail under linux/dosemu or plain dos
  186. with short filenames only).</P>
  187. <P>
  188. <H2><A NAME="installation">Installation</A></H2>
  189. <P>Type:</P>
  190. <PRE>
  191.         make install</PRE>
  192. <P>This will copy the newly compiled perl and libraries into your DJGPP
  193. directory structure. Perl.exe and the utilities go into <CODE>($DJDIR)/bin</CODE>,
  194. and the library goes under <CODE>($DJDIR)/lib/perl5</CODE>. The pod documentation
  195. goes under <CODE>($DJDIR)/lib/perl5/pod</CODE>.</P>
  196. <P>
  197. <HR>
  198. <H1><A NAME="author">AUTHOR</A></H1>
  199. <P>Laszlo Molnar, <EM><A HREF="mailto:laszlo.molnar@eth.ericsson.se">laszlo.molnar@eth.ericsson.se</A></EM></P>
  200. <P>
  201. <HR>
  202. <H1><A NAME="see also">SEE ALSO</A></H1>
  203. <P>perl(1).</P>
  204. <TABLE BORDER=0 CELLPADDING=0 CELLSPACING=0 WIDTH=100%>
  205. <TR><TD CLASS=block VALIGN=MIDDLE WIDTH=100% BGCOLOR="#cccccc">
  206. <STRONG><P CLASS=block> perldos - Perl under DOS, W31, W95.</P></STRONG>
  207. </TD></TR>
  208. </TABLE>
  209.  
  210. </BODY>
  211.  
  212. </HTML>
  213.