From b4216f239a117fdeed5d7e17d5cb7ced99edca51 Mon Sep 17 00:00:00 2001 From: toshinagata1964 Date: Wed, 3 Aug 2011 10:02:52 +0000 Subject: [PATCH] Mac: config.h/Makefiles for AmberTools is modified so that gfortran library is statically linked git-svn-id: svn+ssh://svn.sourceforge.jp/svnroot/molby/trunk@91 a2be9bc6-48de-4e38-9406-05402d4bc13c --- README | 14 ++++++++++++-- amber11/src/config.h | 2 ++ amber11/src/etc/Makefile | 8 ++++---- amber11/src/lib/Makefile | 2 +- amber11/src/sqm/Makefile | 2 +- 5 files changed, 20 insertions(+), 8 deletions(-) diff --git a/README b/README index 8877e15..08e553b 100644 --- a/README +++ b/README @@ -5,7 +5,7 @@ An Interactive Molecular Modeling Software with Integrated Ruby Interpreter - Version 0.5.6 build 20110730 + Version 0.5.6.1 build 20110803 Toshi Nagata @@ -56,7 +56,16 @@ Building Molby is somewhat complicated because you need static libraries of wxWi Install Xcode, if you have not done so yet. The Xcode project included in the source distribution is for Xcode 3.0 and later, thus you need Mac OS 10.5. It may work with Xcode 2.5 on Mac OS 10.4, but this have not been tested. -To build AmberTools, you need to have gfortran installed. The author uses a binary build available at the "R for Mac OS X" website (http://r.research.att.com/tools/). +To build AmberTools, you need to have gfortran installed. The author uses a binary build available at the "R for Mac OS X" website (http://r.research.att.com/tools/, gfortran-4.2.3.dmg). + +We need static linking of libgfortran.a. For that purpose, the following modification should be done after installation of gfortran. + +% cd /usr/local/lib +% sudo cp libgfortran.a libgfortran-static.a # Copy as a different name +% sudo strip -S libgfortran-static.a # Remove the symbols +% sudo ranlib libgfortran-static.a + +The last two lines are necessary to avoid linker warnings saying "Can't find atom for N_GSYM stabs." (ii) wxWidgets @@ -188,5 +197,6 @@ $ make setup # To make the installer 2010.1.21. 2010.1.31. Added notice on AmberTools1.3 2010.4.29. Update description for MinGW/MSYS +2011.8.3. Added notice on static linking of libgfortran for Mac Toshi Nagata diff --git a/amber11/src/config.h b/amber11/src/config.h index d4c6e1d..9a70b4f 100644 --- a/amber11/src/config.h +++ b/amber11/src/config.h @@ -55,6 +55,7 @@ CFLAGS= -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DBINTRAJ $(AMBERBUILDFLAGS) OCFLAGS=-O3 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DBINTRAJ $(AMBERBUILDFLAGS) #NABFLAGS= LDFLAGS= $(AMBERBUILDFLAGS) -framework Accelerate +FLDFLAGS= -nodefaultlibs -lgfortran-static -lgcc -lc -lm -lSystem -lSystemStubs -lgfortranbegin else CC=gcc CXX=g++ @@ -63,6 +64,7 @@ CFLAGS= -DUSE_AMBER_C9XCOMPLEX -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE $(AMB OCFLAGS=-O3 -DUSE_AMBER_C9XCOMPLEX -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE $(AMBERBUILDFLAGS) -DWINDOWS=1 NABFLAGS= LDFLAGS=-Wl,--stack=0x01000000 $(AMBERBUILDFLAGS) +FLDFLAGS= endif #LEX= flex diff --git a/amber11/src/etc/Makefile b/amber11/src/etc/Makefile index babf98c..7b72042 100644 --- a/amber11/src/etc/Makefile +++ b/amber11/src/etc/Makefile @@ -32,13 +32,13 @@ PERLPROGS= calcpka.pl cpinutil.pl CPin.pm lmodprmtop all: $(PROGS) nukit$(SFX): nukit.o - $(FC) -o nukit nukit.o $(LDFLAGS) + $(FC) -o nukit nukit.o $(LDFLAGS) $(FLDFLAGS) nucgen$(SFX): $(NOBJ) syslib - $(FC) -o nucgen$(SFX) $(NOBJ) ../lib/sys2.a $(LDFLAGS) + $(FC) -o nucgen$(SFX) $(NOBJ) ../lib/sys2.a $(LDFLAGS) $(FLDFLAGS) ambpdb$(SFX): $(AOBJ) syslib - $(FC) -o ambpdb$(SFX) $(AOBJ) ../lib/sys2.a $(LDFLAGS) + $(FC) -o ambpdb$(SFX) $(AOBJ) ../lib/sys2.a $(LDFLAGS) $(FLDFLAGS) elsize$(SFX): elsize.o $(CC) $(CFLAGS) -o elsize$(SFX) elsize.o $(LM) @@ -48,7 +48,7 @@ molsurf$(SFX): molsurf.o molsurf.o: molsurf.h resp$(SFX): lapack.o resp.o - $(FC) $(LDFLAGS) lapack.o resp.o -o resp$(SFX) + $(FC) $(LDFLAGS) lapack.o resp.o -o resp$(SFX) $(FLDFLAGS) syslib:: cd ../lib && $(MAKE) sys2.a diff --git a/amber11/src/lib/Makefile b/amber11/src/lib/Makefile index 9eea96e..351d32d 100644 --- a/amber11/src/lib/Makefile +++ b/amber11/src/lib/Makefile @@ -51,7 +51,7 @@ all: @echo "(lib: make specific .o files, driven by other Makefiles)" new2oldparm$(SFX): new2oldparm.o nxtsec.o - $(FC) -o new2oldparm$(SFX) new2oldparm.o nxtsec.o + $(FC) -o new2oldparm$(SFX) new2oldparm.o nxtsec.o $(LDFLAGS) $(FLDFLAGS) sys.a: sys.o wallclock.o random.o veclib.o diff --git a/amber11/src/sqm/Makefile b/amber11/src/sqm/Makefile index 9890e62..1b1d7f6 100644 --- a/amber11/src/sqm/Makefile +++ b/amber11/src/sqm/Makefile @@ -83,7 +83,7 @@ install: sqm$(SFX) mv sqm$(SFX) $(BINDIR) sqm$(SFX): qmmm_module.o $(SQMOBJ) netlib sys - $(FC) -o sqm$(SFX) $(SQMOBJ) qmmm_module.o $(FLIBSF) ../lib/sys.a $(LDFLAGS) + $(FC) -o sqm$(SFX) $(SQMOBJ) qmmm_module.o $(FLIBSF) ../lib/sys.a $(LDFLAGS) $(FLDFLAGS) #-----------LIBS -- 2.11.0