.hc 7 TROUBLESHOOTING


This section is divided up into three parts, general problems, MSDOS specific
and Unix specific.


.h 1 General

.h 1.1 I am getting messages complaining about the use of @[bool] from the @{C++} 
   compiler.

 * Part of the new ANSI standard requires that @[bool] is a built in type.
   If your compiler does not support this you will need the line -DNEEDS_BOOL
   added to the cflags line in the configuration file.

   The reverse may also be true in that your compiler (an upgrade perhaps)
   has the bool type and you have -DNEEDS_BOOL in the configuration file.

   If you have -DNEEDS_BOOL, remove it. If you don't then added.

.h 1.1 I am getting messages complaining about the use of inlines from the @{C++} 
   compiler.

 * The ANSI standard on the use of inlines (which are an optimisation feature)
   is being tightened up. Add -Ei to @[ec2 flags] in the configuration file.


.h MSDOS/WINDOWS

.h 2.1 The compilations run very, very slowly on MSDOS.

 * Eon is compiled with DJGPP, a 32 bit compiler that is not limited by
   MSDOS conventional memory space, it can use extended memory. If DJ's
   runtime (called go32) runs out of memory it will swap to disk (slow). 

   If you have not got a memory manager running things will slow down,
   especially the @{c++} compilation phases (if you are using DJGPP as the
   back end compiler).
 
   Read the file djgpp.doc for hints on how to start a memory manager.

   Your MSDOS book will have more information. If you are running Windows
   you will already have a memory manager and the problem is elsewhere.

 * Are you running smartdrive or another disk caching program? If not
   you will gain a lot of all round by using one.


.h 2.2 I see error 4 or messages like @[Can't open file]

 * You haven't got enough file handles. Increase the FILES entry in
   CONFIG.SYS. Currently, this needs to be at least 50


.h Every so often, a compilation just hangs.

 * Are you using a version of DJGPP that is earlier that 1.12? If so,
   this might be due to a bug that caused the C system() call to hang.
   An upgrade is well worth it.


