Wednesday, May 10, 2006

Compiling AMBER 9 with xlf90 but without xlc

AMBER 9 can be built with solely xlf90 but without xlc. In order to do so, just do ordinary ./configure -nopar xlf90_macosx and replace "xlc" in the config.h file with "gcc". But this probably will cause following problem when compiling ptraj:
/usr/bin/ld: warning multiple definitions of symbol _second second.o definition of _second in section (__TEXT,__text) /System/Library/Frameworks/Accelerate.framework/Versions/A/Fra meworks/vecLib.framework/Versions/A/libLAPACK.dylib(single mod ule) definition of _second
/usr/bin/ld: Undefined symbols:
_fprintf$LDBLStub
_printf$LDBLStub
_fscanf$LDBLStub
_sprintf$LDBLStub
_sscanf$LDBLStub
_vfprintf$LDBLStub
make: *** [rdparm] Error 1

For this, just try to add -Wl,-lSystemStubs in the LOADLIB parameter of config.h and we are all set. (I am guessing -lSystemStubs also works, but I am a little bit lazy, please test by yourself...)