Amber 8 on Solaris 7

Use Workstation v6u2 compilers, not v5 to avoid

  $make
  <snip>
  make[1]: Entering directory `/export/umist/zzcgutwr/amber8/src/sander'
  /lib/cpp -P -I/export/umist/zzcgutwr/amber8/src/include   trace.f > _trace.f
  f90 -c -O2   -free  -o trace.o _trace.f
  /lib/cpp -P -I/export/umist/zzcgutwr/amber8/src/include   lmod.f > _lmod.f
  f90 -c -O2   -free  -o lmod.o _lmod.f
  Assertion failed: at_handle_table[at_idx].tag == VAR_TAG, file
  ../srcfw/FWcvrt.c, line 4018
  f90: Fatal error in f90comp: Abort
  make[1]: *** [lmod.o] Error 1
  make[1]: Leaving directory `/export/umist/zzcgutwr/amber8/src/sander'
  make: *** [serial] Error 2

For the parallel bit, add -I/opt/SUNWhpc/include and -L/opt/SUNWhpc/lib to config.h in a few places:

    CPPFLAGS= $(AMBERBUILDFLAGS) -I/opt/SUNWhpc/include

    FPPFLAGS= -P -I$(AMBER_SRC)/include -I/opt/SUNWhpc/include -DMPI  $(AMBERBUILDFLAGS)
    FFLAGS= -O1 -I/opt/SUNWhpc/include -L/opt/SUNWhpc/lib $(LOCALFLAGS) $(AMBERBUILDFLAGS)
F
and
    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/SUNWhpc/lib
    make parallel

The X-related part of Amber v8 won't compile out of the box on Solaris 7. As per usual the /usr/openwin/include files are the problem. The following bodges fix things.


added

    #define _Xconst const

to Atoms.h, CharSet.h, SysUtil.h, Xct.h and WidgetNode.h below

    #include <X11/Xfuncproto.h>

------------------------------------------

added

    #include <stdio.h>
    typedef unsigned long Pixel;
    #define _Xconst const

to Drawing.h below

    #if NeedFunctionPrototypes
    .
    .
    #endif

------------------------------------------

added

    #define _Xconst const

to Lookup.c below

    #include <X11/keysymdef.h>


------------------------------------------