We have some fortran90 code that successfully compiles and runs on 32 bit Linux systems, eg Fedora Core 1. On a Opteron system running the 64 bit Fedora Core 2 and using pgf90, ld issues the following warnings:
- /usr/bin/ld: Warning: alignment 16 of symbol
sib_const_module_0_' in sib_const_module.o is smaller than 32 in SiBDRV.o /usr/bin/ld: Warning: alignment 16 of symbolsib_io_module_0_’ in sib_io_module.o is smaller than 32 in SiBDRV.o
and when run, the program dies with a seg fault.
It appears that the modules sib_io_module and sib_const_module have different alignment from the routines that use them even though they were all compiled with the same compiler switches. I tried using the -Mdalign, -Mllalign and -Mfunc32 switches but this had no effect.
Has anyone else seen this problem? Is there a fix?
Compiler: pgf90 v.5.1
OS: Fedora Core 2 64 bit
Hardware: Dual Opteron