[Nauty] Newbie questions

Brendan McKay bdm at cs.anu.edu.au
Sun Aug 3 13:47:01 EST 2003

* Felix Goldberg <felixg at techunix.technion.ac.il> [030803 12:59]:
> Hello,
> I've downloaded nauty and am trying to set it up on my PC.  So far I have
> two simple questions:
> 1. Turbo C++ won't compile nauty, claiming some "unitsd.h" and
> "sys/times.h" files are missing.
> Are these files part of nauty or part of some standard library I don't
> have?
> Where does one get them, anyway?

On UNIX-like platforms (which includes DJGPPP and Cygwin on a PC) you
first run "configure" which will determines such things as whether your
system as certain header files.  On other platforms, you have to do some
manual configuration.  At the head of the file nauty.h you will see some
lines like this:
#define HAVE_UNISTD_H  1    /* <unistd.h> */
#define HAVE_SYSTYPES_H  1    /* <sys/types.h> */
#define HAVE_STDDEF_H  1     /* <stddef.h> */
#define HAVE_STDLIB_H  1    /* <stdlib.h> */
#define HAVE_STRING_H  1    /* <string.h> */
#define MALLOC_DEC 0  /* 1 = malloc() is declared in stdlib.h,
                                 2 = in malloc.h, 0 = in neither place */

#define SIZEOF_INT 4
#define SIZEOF_LONG 4
#define SIZEOF_LONG_LONG 8   /* 0 if nonexistent */

#define HAVE_CONST 1    /* compiler properly supports const */
The values are usually determined automatically by "configure" but you
will need to adjust them manually.  For example you don't have unistd.h
so set the value of HAVE_UNISTD_H to 0.

There is a similar set of lines near the start of naututil.h which you
will also need to adjust.  If you are using any of the utilities other
than just nauty, also adjust gtools.h.

After all this adjustment, it should compile but I have never tried
it under your environment.  So please tell me what worked and I'll add
this information to the README file.  Some programs (especially shortg)
will not work due to lack of Unix functionality.

For people with UNIX-like platforms:  Don't edit nauty.h, naututil.h
or gtools.h by hand - they are created by "configure" out of the
templates nauty-h.in, naututil-h.in and gtools-h.in.
> 2. Is "biconnected" the same as "2-connected"?



More information about the Nauty mailing list