From chemistry-request@ccl.net Mon Dec 2 12:38:13 1991 Date: Mon, 2 Dec 91 12:20:38 EST From: m10!frisch@uunet.UU.NET (Michael Frisch) Subject: Re: COmpiling individual link of G90 on IBM RS/6000 To: chemistry@ccl.net I am forwarding to the list(jkl@ccl.net) ---------- Begin Forwarded Message ---------- >From bbesler@ouchem.chem.oakland.edu Mon Dec 2 10:45:38 1991 Date: Mon, 2 Dec 91 10:47:50 -0500 From: bbesler@ouchem.chem.oakland.edu (Brent H. Besler) To: chemistry-request@ccl.net Subject: COmpiling individual link of G90 on IBM RS/6000 Status: R The bldg90 script that comes with the RS 6000 version of Gaussian 90 seems to be only capable of compiling the entire program, not individual overlays(say l101, l302, etc.). How do you compile and link individual overlays? ----------- End Forwarded Message ----------- 1. You can use the file g90/bsd/g90.make to build individual links: cd $g90root/g90 make -f bsd/g90.make l302.exe will recompile and relink l302, assuming that l302.F is more recent than l302.exe. 2. If you are debugging your own link in your own directory, you can start from the sample makefile given below. It ensures that the compiler flags (e.g., -qextname) are applied consistently: -------------- Beginning of Makefile --------------------- IBM_FC = xlf -lblas MFL_FC = fc TIT_FC = f77 SUN_FC = fc # set FC to be one of the above variables depending on whether you # are on an RS/6000, Multiflow, Stardent Titan, or Sun FC = $(IBM_FC) .SUFFIXES: .SUFFIXES: .o .F # change the following to specify wherever the standard Gaussian # files are kept. GDIR = /g90 .F.o: make -f $(GDIR)/bsd/g90.make $*.o # This should be a list of the links to be built. all: l1102.exe # Each link should have a list of contributing files like this. # Only routines which have been modified need be listed. OBJ1102 = ml1102.o # Each link to be made needs an explicit rule similar to the # one below. If the link is entirely new, the reference to # the standard version of its library should be omitted. l1102.exe: $(OBJ1102) $(FC) -o l1102.exe $(OBJ1102) $(GDIR)/l1102.a \ $(GDIR)/util.a -------------- End of Makefile --------------------- -------