[gmx-users] 64-bit gromacs-4.0.7 for Mac OSX
Mark Abraham
mark.abraham at anu.edu.au
Thu Apr 29 16:22:37 CEST 2010
----- Original Message -----
From: "J. Rui Rodrigues" <joaquim.rodrigues at estg.ipleiria.pt>
Date: Thursday, April 29, 2010 23:02
Subject: Re: [gmx-users] 64-bit gromacs-4.0.7 for Mac OSX
To: Discussion list for GROMACS users <gmx-users at gromacs.org>
> Hi,
>
> (...)
> > > Output from make:
> > > =================
> > > (...)
> > > /bin/sh ../../libtool --tag=CC --mode=link
> cc -O3 -fomit-frame-pointer -finline-functions -Wall -Wno-
> unused -funroll-all-loops -L/usr/local/lib -
> > > framework Accelerate -o grompp grompp.o libgmxpreprocess.la
> ../mdlib/libmd.la ../gmxlib/libgmx.la -
> lxml2 -L/usr/X11/lib -lfftw3f -lm -lSM -lICE -lX11
> > > cc -O3 -fomit-frame-pointer -finline-functions -Wall -Wno-
> unused -funroll-all-loops -framework
> Accelerate -o grompp grompp.o -L/usr/local/lib
> > > ./.libs/libgmxpreprocess.a -L/usr/X11/lib
> ../mdlib/.libs/libmd.a /Users/jrui/Desktop/gromacs-
> 4.0.7/src/gmxlib/.libs/libgmx.a ../gmxlib/.libs/libgmx.a
> > > /usr/lib/libxml2.dylib -lpthread -lz -licucore
> /usr/local/lib/libfftw3f.a -lm /usr/X11/lib/libSM.6.dylib
> /usr/X11/lib/libICE.6.dylib /usr/X11/lib/libX11.6.dylib
> > > /usr/X11/lib/libXau.6.dylib /usr/X11/lib/libXdmcp.6.dylib
> > > ld warning: in /usr/local/lib/libfftw3f.a, file is not of
> required architecture
> >
> > What does (e.g.) "nm /usr/local/lib/libfftw3f.a" have to say?
> Also, look
> > at "ls -l /usr/local/lib/libfftw*" to see whether you're
> picking up
> > versions with the timestamps you expect... Maybe your FFTW
> configuration
> > only installed dynamic libraries, or something. I don't know
> why
> > compiling 4.0.5 would have succeeded, however.
> >
> > Mark
> >
>
> Here is the output from ls:
> ls -l /usr/local/lib/libfftw*
> -rw-r--r-- 1 root wheel 2441624 Jul 21
> 2009 /usr/local/lib/libfftw3.a
> -rwxr-xr-x 1 root
> wheel 891 Jul 21 2009
> /usr/local/lib/libfftw3.la-rw-r--r-- 1 root
> wheel 2370752 Jul 21 2009 /usr/local/lib/libfftw3f.a
> -rwxr-xr-x 1 root
> wheel 894 Jul 21 2009
> /usr/local/lib/libfftw3f.la
> The output from "nm /usr/local/lib/libfftw3f.a" is so large that
> it bounced on the mailing list. Here are the first
> lines:
> nm /usr/local/lib/libfftw3f.a | head
> nm: no name list
>
> /usr/local/lib/libfftw3f.a(align.o):
> 0000000000000010 s EH_frame1
> 0000000000000000 T _fftwf_alignment_of
> 0000000000000028 S _fftwf_alignment_of.eh
>
> /usr/local/lib/libfftw3f.a(alloc.o):
> 0000000000000090 s EH_frame1
> 0000000000000082 s LC0
> 000000000000008a s LC1
>
>
> Also, "nm -arch i386" returns:
> nm: file: /usr/local/lib/libfftw3f.a does not contain
> architecture: i386
>
> while "nm -arch x86_64" returns the same output as nm without options.
>
> Meanwhile, I went ahead and, by comparing the line where the
> 4.0.7 compilation fails with the corresponding line
> in the 4.0.5 compilation, I noticed that only difference is that
> the latter contains the cc extra options -m64 -
> std=gnu99
> I guess that 64bit detection is failing. So, I passed these
> options to configure and the compilation went fine,
> producing the expected 64bit binaries:
> ./configure CPPFLAGS=-I/usr/local/include LDFLAGS=-
> L/usr/local/lib --prefix=/usr/local/gromacs407 --
> program-suffix=407 CFLAGS="-m64 -std=gnu99"
It may be that the 64 bit detection is failing... comparing the output from configure in the two cases would help diagnose that. Seeing whether a fresh 4.0.5 configuration compiles might be of interest.
The underlying problem might be a change in your system configuration, or the version of the autotools using in constructing 4.0.5 configure vs 4.0.7. If you really care, getting the bootstrap script from a GROMACS git distribution and running that on both your source versions should lead to both being well-formed for your system and the right flags being generated for libtool. Your work-around is probably fine, though.
Mark
More information about the gromacs.org_gmx-users
mailing list