| 
									
										
										
										
											2021-02-02 01:57:40 +08:00
										 |  |  | Notes for the DOS platform with DJGPP | 
					
						
							|  |  |  | ===================================== | 
					
						
							| 
									
										
										
										
											2002-06-14 04:42:35 +08:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2005-01-15 00:25:36 +08:00
										 |  |  |  OpenSSL has been ported to DJGPP, a Unix look-alike 32-bit run-time | 
					
						
							|  |  |  |  environment for 16-bit DOS, but only with long filename support. | 
					
						
							|  |  |  |  If you wish to compile on native DOS with 8+3 filenames, you will | 
					
						
							|  |  |  |  have to tweak the installation yourself, including renaming files | 
					
						
							|  |  |  |  with illegal or duplicate names. | 
					
						
							| 
									
										
										
										
											2002-06-14 04:42:35 +08:00
										 |  |  | 
 | 
					
						
							|  |  |  |  You should have a full DJGPP environment installed, including the | 
					
						
							|  |  |  |  latest versions of DJGPP, GCC, BINUTILS, BASH, etc. This package | 
					
						
							| 
									
										
										
										
											2020-06-10 23:49:25 +08:00
										 |  |  |  requires that PERL and the PERL module `Text::Template` also be | 
					
						
							| 
									
										
										
										
											2021-02-03 01:16:19 +08:00
										 |  |  |  installed (see [NOTES-PERL.md](NOTES-PERL.md)). | 
					
						
							| 
									
										
										
										
											2002-06-14 04:42:35 +08:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2005-01-15 00:25:36 +08:00
										 |  |  |  All of these can be obtained from the usual DJGPP mirror sites or | 
					
						
							| 
									
										
										
										
											2020-06-10 23:49:25 +08:00
										 |  |  |  directly at <http://www.delorie.com/pub/djgpp>. For help on which | 
					
						
							| 
									
										
										
										
											2005-01-15 00:25:36 +08:00
										 |  |  |  files to download, see the DJGPP "ZIP PICKER" page at | 
					
						
							| 
									
										
										
										
											2020-06-10 23:49:25 +08:00
										 |  |  |  <http://www.delorie.com/djgpp/zip-picker.html>. You also need to have | 
					
						
							| 
									
										
										
										
											2005-01-15 00:25:36 +08:00
										 |  |  |  the WATT-32 networking package installed before you try to compile | 
					
						
							| 
									
										
										
										
											2020-06-10 23:49:25 +08:00
										 |  |  |  OpenSSL. This can be obtained from <http://www.watt-32.net/>. | 
					
						
							| 
									
										
										
										
											2002-12-04 17:54:10 +08:00
										 |  |  |  The Makefile assumes that the WATT-32 code is in the directory | 
					
						
							|  |  |  |  specified by the environment variable WATT_ROOT. If you have watt-32 | 
					
						
							| 
									
										
										
										
											2020-06-10 23:49:25 +08:00
										 |  |  |  in directory `watt32` under your main DJGPP directory, specify | 
					
						
							|  |  |  |  `WATT_ROOT="/dev/env/DJDIR/watt32"`. | 
					
						
							| 
									
										
										
										
											2002-06-14 04:42:35 +08:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2005-01-15 00:25:36 +08:00
										 |  |  |  To compile OpenSSL, start your BASH shell, then configure for DJGPP by | 
					
						
							| 
									
										
										
										
											2020-06-10 23:49:25 +08:00
										 |  |  |  running `./Configure` with appropriate arguments: | 
					
						
							| 
									
										
										
										
											2002-06-14 04:42:35 +08:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2020-06-10 23:49:25 +08:00
										 |  |  |     ./Configure no-threads --prefix=/dev/env/DJDIR DJGPP | 
					
						
							| 
									
										
										
										
											2019-02-01 01:55:30 +08:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2020-06-10 23:49:25 +08:00
										 |  |  |  And finally fire up `make`. You may run out of DPMI selectors when | 
					
						
							| 
									
										
										
										
											2005-01-15 00:25:36 +08:00
										 |  |  |  running in a DOS box under Windows. If so, just close the BASH | 
					
						
							| 
									
										
										
										
											2020-06-10 23:49:25 +08:00
										 |  |  |  shell, go back to Windows, and restart BASH. Then run `make` again. | 
					
						
							| 
									
										
										
										
											2005-01-10 04:14:04 +08:00
										 |  |  | 
 | 
					
						
							|  |  |  |  RUN-TIME CAVEAT LECTOR | 
					
						
							|  |  |  |  -------------- | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |  Quoting FAQ: | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   "Cryptographic software needs a source of unpredictable data to work | 
					
						
							|  |  |  |    correctly.  Many open source operating systems provide a "randomness | 
					
						
							| 
									
										
										
										
											2020-06-10 23:49:25 +08:00
										 |  |  |    device" (`/dev/urandom` or `/dev/random`) that serves this purpose." | 
					
						
							| 
									
										
										
										
											2005-01-10 04:14:04 +08:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2020-06-10 23:49:25 +08:00
										 |  |  |  As of version 0.9.7f DJGPP port checks upon `/dev/urandom$` for a 3rd | 
					
						
							|  |  |  |  party "randomness" DOS driver. One such driver, `NOISE.SYS`, can be | 
					
						
							|  |  |  |  obtained from <http://www.rahul.net/dkaufman/index.html>. |