AMBER: Dual Xeon EM64T Intel Fortran Compile Problem

From: Shekter, Lee <>
Date: Mon, 21 Mar 2005 19:12:26 -0500

Hello -
This question was originally posted by another user back in September, but the responses did not solve the problem. I contacted the user, directly but he still was only able to compile AMBER 8 in serial mode, not parallel. I have been trying to compile AMBER 8, with all bug fixes, on an IBM xSeries 336, with 2 X 3.0 GHz Xeon EM64T cpus, 8G RAM, 36G U320 SCSI HDD. The OS is RHEL 3.0 (AMD64 version) with update 4. The compiler is Intel Fortran, v. 8.1 along with Intel MKL v. 7.2, and gcc v. 3.2.3. I have tried compiling in both 32-bit and 64-bit mode. The 32-bit mode was attempted by simply running ../configure -p4 ifort since that seemed to be the most similar and then running configure. I am attaching the config.h that was created along with the output of the compile. The latter is a little long, but I'm sure any experts reading this will be able to sort the wheat from the chaff pretty quickly. One of the responses to the earlier question was that this was a compiler error, but it looks like an error in "ld". To wit:
ld: BFD 20030523 internal error, aborting at .../../bfd/elfcode.h line 226 in bfd_elf64_swap_symbol_in
I also tried downgrading the Intel compiler to v. 8.0 as per an earlier suggestion but that made things worse. I then tried to force configure to recognize the "64-bitness" of my machine by substituting $arch = 'ia64' with $arch = 'x86_64', since uname -m yields x86_64, not ia64. This seemed to create a 64-bit config.h, which now recognized the 64-bit MKL (though not the EM64T MKL which is included). When I ran this configure, compilation ran a little longer but still died, reporting: /opt/intel/mkl72/lib/64/libmkl_lapack.a: could not read symbols: Bad value.
I am including the output of that as well, called "configure_64.log. The 32-bit error and the 64-bit error have both been reported on the net, just not in the context of compiling AMBER 8.
In summary, I am attaching 5 files:
config.h: the original config.h
make_serial.log: the original output from compiling
configure_64: the 64 bit configure script
config.h_64: the resulting config.h
make_serial_64.log: the output from running the 64-bit configure
I am not attaching the original configure, since that is included in the /src directory.
Yes, I did set "ulimit" to unlimited.
Thanks in advance,
Lee Shekter
Assistant Professor (Adjunct) Medical Science
Brown University
Divison of Biology and Medicine
Box G
Providence, RI 02912-9107

The AMBER Mail Reflector
To post, send mail to
To unsubscribe, send "unsubscribe amber" to

Received on Tue Mar 22 2005 - 00:53:00 PST
Custom Search