[Dune] Problems compiling dune trunk on Cray XT6

Eike Mueller E.Mueller at bath.ac.uk
Mon Nov 12 16:38:31 CET 2012


Hi Benedikt,

I used the following config file to compile with gcc on HECToR machine (is that what you are using?):

AUTOGEN_FLAGS=
CONFIGURE_FLAGS="DUNE_LDFLAGS='-all-static' CC='cc' CXX='CC' CFLAGS='-O3' FFLAGS='-O3' FCFLAGS='-O3' CFLAGS='' 
CXXFLAGS='-DNDEBUG -O3' FC='ftn' --enable-static --disable-shared --prefix='/home/n02/n02/eike/work/Library/Dune' 
--disable-documentation --with-alugrid='/home/n02/n02/eike/work/Library/ALU' 
--with-superlu='/opt/cray/tpsl/1.2.00/GNU/46/interlagos' --with-superlu-lib='libsuperlu_gnu.a' 
--with-parmetis='/opt/cray/tpsl/1.2.00/GNU/46/interlagos/lib' --enable-parallel"
MAKE_FLAGS=

I haven't used the Cray compiler, though (maybe I should...). On HECToR I load these modules in my .bashrc file to use the 
installed SuperLU and PARMETIS installations (I'm not so sure why I load the xt-asyncpe at the moment):

module swap PrgEnv-cray PrgEnv-gnu
module load tpsl/1.2.00
module swap xt-asyncpe xt-asyncpe/5.06

Also, I have not recompiled DUNE since the downtime last week, actually it's a while since I rebuilt DUNE on that machine, but 
maybe the information in my config file is still useful.

Cheers,

Eike

Markus Blatt wrote:
> Hey,
> 
> the flags in your opts-file seem to be a little bit messy.
> 
> On Mon, Nov 12, 2012 at 02:08:10PM +0100, Benedikt Oswald wrote:
>> /bin/sh ../../../libtool --tag=CXX   --mode=link CC -std=c++0x
>> -DMPICH_IGNORE_CXX_SEEK -O2 -DNDEBUG -fomit-frame-pointer -static
>> --no-strict-aliasing -DHAVE_SUPERLU_DIST
>> -I/users/boswald/extlib/superludist/2.5/xt-mpich2/5.5.0/gcc/4.6.2/SRC -L/users/boswald/extlib/superludist/2.5/xt-mpich2/5.5.0/gcc/4.6.2/lib -lsuperlu_dist_2.5 -L/users/boswald/extlib/parmetis/3.2.0/xt-mpich2/5.5.0/gcc/4.6.2 -lparmetis -lmetis -all-static  [...]
> 
> The -all-static flags has to be the first linker flags specified.
>> My configure flags for the Dune Opts file are as follows:
>>
>>
>> CONFIGURE_FLAGS="DUNE_LDFLAGS='-all-static ' MPICXX='CC' CXX='CC' CC='cc' F77=ftn LD='CC'
>>                  CXXFLAGS='-DMPICH_IGNORE_CXX_SEEK -O2 -DNDEBUG
>> -fomit-frame-pointer -static --no-strict-aliasing 
>> -DHAVE_SUPERLU_DIST
>>                  -I$HOME/extlib/superludist/2.5/xt-mpich2/5.5.0/gcc/4.6.2/SRC
>>                  -L$HOME/extlib/superludist/2.5/xt-mpich2/5.5.0/gcc/4.6.2/lib
>>                  -lsuperlu_dist_2.5
>>                  -L$HOME/extlib/parmetis/3.2.0/xt-mpich2/5.5.0/gcc/4.6.2
>>                  -lparmetis -lmetis'
> 
> Please remove the linker flags (-L... -l....) and perhaps even the
> static flag here.. The linker flags need to go into LDFLAGS
> 
>>                  CPPFLAGS='-DMPICH_IGNORE_CXX_SEEK -O2 -DNDEBUG
>> -fomit-frame-pointer -static --no-strict-aliasing
>> -DHAVE_SUPERLU_DIST
>> -I$HOME/extlib/superludist/2.5/xt-mpich2/5.5.0/gcc/4.6.2/SRC
>> -L$HOME/extlib/superludist/2.5/xt-mpich2/5.5.0/gcc/4.6.2/lib
>> -lsuperlu_dist_2.5
>> -L$HOME/extlib/parmetis/3.2.0/xt-mpich2/5.5.0/gcc/4.6.2 -lparmetis
>> -lmetis'
> 
> The same holds here
>>                  CFLAGS='-DMPICH_IGNORE_CXX_SEEK -O2 -DNDEBUG
>> -fomit-frame-pointer -static --no-strict-aliasing
>> -DHAVE_SUPERLU_DIST
>> -I$HOME/extlib/superludist/2.5/xt-mpich2/5.5.0/gcc/4.6.2/SRC
>> -L$HOME/extlib/superludist/2.5/xt-mpich2/5.5.0/gcc/4.6.2/lib
>> -lsuperlu_dist_2.5
>> -L$HOME/extlib/parmetis/3.2.0/xt-mpich2/5.5.0/gcc/4.6.2 -lparmetis
>> -lmetis'
> 
> and here.
> 
>>                  FFLAGS='-DMPICH_IGNORE_CXX_SEEK -O2 -DNDEBUG
>> -fomit-frame-pointer -static --no-strict-aliasing'
>>                  LDFLAGS='-static
>> -L$HOME/extlib/superludist/2.5/xt-mpich2/5.5.0/gcc/4.6.2/lib
>> -lsuperlu_dist_2.5
>> -L$HOME/extlib/parmetis/3.2.0/xt-mpich2/5.5.0/gcc/4.6.2 -lparmetis
>> -lmetis'
> 
> This is the right place.
>> I have attached the config.log from the dune-istl module.
>>
>> Why would it now advance further than before but crash with the same
>> error message ?
> 
> Because the first test does not use your additional flags.
> 
> 
> BTW: Somehow you seem to do much work in the flags manually that
> configure should actually do for you. Maybe Eike and Christoph might
> give you hint how they build on the Cray.
> 
> Markus
> 


-- 
Dr Eike Mueller
Research Officer

Department of Mathematical Sciences
University of Bath
Bath BA2 7AY, United Kingdom

+44 1225 38 5633
e.mueller at bath.ac.uk
http://people.bath.ac.uk/em459/




More information about the Dune mailing list