> | I have downloaded Hugs98 now and compiled it with GCC on Linux and
> | DJGPP on DOS. However, the version for DOS does not seem to be very
> | stable,
> | I encounter internal errors from time to time, and sometimes it reboots
> | my computer when I execute a shell command. I am using Windows95, have
> | Cyrix166 CPU and have compiled Hugs with make.exe that comes with
> | Borland Delphi (version 5.1).

There's probably not too many people out there in a position to try
reproducing your problem so the more info you give us the better.
Version numbers are especially useful.

It would also be worth doing a build with optimisation turned off - an
occasional source of bugs. Assuming that doesn't help, read on...

I'm assuming you did something like the following (edited from
hugs/Install) to build Hugs (let us know if not)

  cd hugs\src\djgpp2
  config.bat
  cd ..
  make hugs.exe

The most likely source of problems here is the use of config.bat
during the build.  This copies config.h from the same directory up
into hugs/src.  

There are two possible problems with this file:

1) config.h has to be manually updated when a new configuration option is
   added to configure.in - and it probably hasn't been updated in a while.

   The way to check for this is to do a diff between an up-to-date
   config.h (eg win32/config.h) and djgpp2/config.h and check that
   all diffs are due to lines being different not due to lines being
   missing.

   (Even easier would be to use wc to check the number of lines.
    On a randomly chosen copy of Hugs, it reports one extra line in djgpp2.
    If someone could find and delete that extra line, checking for updates
    would be easier still.)

2) config.h is supposed to be automatically generated by running the
   configure script.  When this works, it gives you a system precisely
   matched to your machine (what libraries you have, what OS you have, 
   what compiler you're using, etc).

   On platforms where that doesn't work, we generate a copy on one machine
   and distribute it in the hope that it will match "similar" machines.
   There's a fair chance that your machine is different from the one I 
   built config.h on (either an NT or Win95 box made in the last 3-4 years
   running that latest stable release of whichever OS and a 2-3 year old
   version of djgpp2 - maybe).  In this case you have to update the config.h
   file to match your machine.  Two ways to do this:

   1) If you can run cygwin on your machine, you can try to generate a
      correct one by running hugs/src/djgpp2/config.sh.  This may not work
      though (there's a comment in that script which says it crashed halfway
      before generating config .h and I manually generated the config.h
      file based on what it printed before crashing).

   2) Read through config.h looking for things that look suspicious.
      Each entry is reasonably documented with what the entry tells you
      about your system.  Depending on your pain threshold, you could
      even look through hugs/src/unix/* (especially configure.in, aclocal.m4
      and configure) looking for the tests that configure uses to
      check for particular features.

      I'd expect djgpp2 libraries to lean more towards ANSI/Posix standards
      than they did when I built config.h and expect anything that comes
      straight from DOS to differ more from ANSI/Posix standards on DOS
      than they do from NT.  (But please note that I'm speaking from 
      ignorance here - I've never done anything with DOS.)

And if that fails to help, you could check options.h too.  The only
critical setting should be {SMALL,REGULAR,LARGE}_HUGS (currently set
to LARGE in djgpp2) - but you never know.

I hope this helps - sorry I can't be more concrete.

--
Alastair Reid        [EMAIL PROTECTED]        http://www2.cs.utah.edu/~reid/



Reply via email to