[mesa-users] ifort -ipo

Rob.Farmer Rob.Farmer at open.ac.uk
Wed Apr 3 16:33:35 EDT 2013


Hi
Compiling MESA v4849 with ifort 13 and command line option -ipo results in the following failed compilation:

/tmp/ipo_ifortMr1Go41.o:(.debug_info+0x9f2): undefined reference to `eos_correction_$MY_MESA_DIR.2'
/tmp/ipo_ifort0GXEJR1.o:(.debug_info+0xa2d): undefined reference to `sample_eos_$MY_MESA_DIR.2'

Now i'm not sure of the "correct" solution but adding a
 character (len=256) :: my_mesa_dir 
inside: 
sample/src/eos_correction.f setup and 
sample/src/sanple.f sample

Fixes things

I was under the impressions as these subroutines which are contained inside the program they should have inherited the  my_mesa_dir  declaration from the program, but as nothing else in the files needs the variable i don't see a problem moving it to the subroutine rather than in the program. Could be the ipo doing improper optermisation and removing the reference somehow. 

---------------------

There is then a 

ipo: warning #11021: unresolved history_getval_
        Referenced in libstar.a(pgstar.o)

inside star/privatte

Looks like pgstar.f get_history_value should have 
  use history, only: history_getval 
rather than
use history, only: get_history_values

Regards
Rob

ps Anyone else wanting to use ipo, my machine with 3gb of memory struggled during linking so i suggest you find a machine with more memory 
pps You'll also need to switch to the intel linker by changing lib tool ar to xiar

-- 
The Open University is incorporated by Royal Charter (RC 000391), an exempt charity in England & Wales and a charity registered in Scotland (SC 038302).





More information about the Mesa-users mailing list