Project

General

Profile

Bug #36508

Updated by Brad Hubbard over 5 years ago

Binaries compiled against the 2.6 version of libtcmalloc.so.4 (in this case ceph-osd) have the following undefined symbols.
<pre>

# nm -D /usr/bin/ceph-osd|egrep '(_ZdaPvm|_ZdlPvm)'

U _ZdaPvm

U _ZdlPvm
</pre>

The 2.4 version of libtcmalloc.so.4 (gperftools-libs-2.4-8.el7.x86_64) does not export these symbols.
<pre>

# nm -D /usr/lib64/libtcmalloc.so.4|egrep '(_ZdaPvm|_ZdlPvm)'
#
</pre>

This leads to errors such as the following at runtime.

ceph-osd: symbol lookup error: ceph-osd: undefined symbol: _ZdaPvm

Installing gperftools-libs-2.6.1-1.el7.x86_64.rpm resolves the issue.

<pre>
# nm -D /usr/lib64/libtcmalloc.so.4|egrep '(_ZdaPvm|_ZdlPvm)'
0000000000035dc0 T _ZdaPvm
0000000000035dc0 T _ZdlPvm
</pre>

This issue is related to http://tracker.ceph.com/issues/35969 which required the 2.6 version at *build* time.

Back