re Yanni Wang's compile problem

From: Chuck Schneider <>
Date: Thu 02 Mar 2000 09:24:40 -0500


Yanni Wang got an error "main.o: main: multiply defined" when building
AMBER5 on an Alpha system. That's because when using a Fortran compiler
command to do linking, it is assumed by default that there is some
Fortran code in the mix, and a special Fortran-specific main routine is
included automatically. I haven't figured out a completely clean way
to do the entire build of AMBER5 in one pass. What I'd recommend is
to run Makeall a second time, after changing the definition of LOAD
in the MACHINE file to something like this:

setenv LOAD "f77 -nofor_main "

The -nofor_main option will omit the Fortran-specific main routine,
and eliminate the "multiply defined" error - but it will still allow
any Fortran run-time library code to be linked in if it's needed.

By the way, AMBER6 resolves this issue by having separate LOAD
and LOADCC definitions. There, just use f77 or f90 for LOAD and
cc for LOADCC.


Chuck Schneider
Compaq High Performance Computing Expertise Center
Marlboro, Massachusetts  508-467-7343
Received on Thu Mar 02 2000 - 06:24:40 PST
Custom Search