AMBER Archive (2009)

Subject: Re: [AMBER] problem building AmberTools/sleap on AIX

From: Shan-ho Tsai (
Date: Fri Jan 09 2009 - 15:49:17 CST

Hi Bill,
Thanks for the suggestion. It turns out there are no man pages
for any of the 3 symbols. Because these functions are defined
in src/gleap/mortsrc/nablib, I had assumed that these are
either AmberTools functions or that they would be built as
part of building AmberTools (that is, they are not part of
other C++ or system libraries). Is this correct?

It is strange to me that it appears that libmort.a was built
correctly and the 3 symbols appear to be defined there.
The output of 'nm -A libmort.a' contains:

libmort.a[traceback.o]: .rt_errormsg_s T 224
libmort.a[memutil.o]: .imatrix T 688
libmort.a[memutil.o]: .matrix T 1056

Doesn't this mean that these symbols are defined in libmort.a?
If so, why can't ld resolve them?

Any ideas?
Thank you very much!!

On Fri, 9 Jan 2009, Bill Ross wrote:

>> Unfortunately removing the "-static-libgcc" option from
>> the sleap compilation line (and adding -lpthread) still
>> leaves the last 3 undefined symbols.
>>> ld: 0711-317 ERROR: Undefined symbol: .rt_errormsg_s(int, char*, char*)
>>> ld: 0711-317 ERROR: Undefined symbol: .imatrix(int, int, int, int)
>>> ld: 0711-317 ERROR: Undefined symbol: .matrix(int, int, int, int)
> You could try 'man x' where x is each of [rt_errormsg_s, imatrix, matrix]
> and see if some library or libraries are indicated.
> Bill

AMBER mailing list