[Bugs] [Bug 1429696] ldd libgfxdr.so.0.0.1: undefined symbol: __gf_free
bugzilla at redhat.com
bugzilla at redhat.com
Tue Mar 21 15:18:54 UTC 2017
https://bugzilla.redhat.com/show_bug.cgi?id=1429696
--- Comment #11 from Worker Ant <bugzilla-bot at gluster.org> ---
COMMIT: https://review.gluster.org/16873 committed in master by Niels de Vos
(ndevos at redhat.com)
------
commit f21fd308fcfab6151e7c8f60642d8dfcbec0cc48
Author: Kaleb S. KEITHLEY <kkeithle at redhat.com>
Date: Wed Mar 8 14:44:50 2017 -0500
build: libgfxdr.so calls GF_FREE(), needs to link with -lglusterfs
The previous change to remove the xdrgen script exposed (or
created) a recursive build dependency: libglusterfs needs the
generated headers, and libgfxdr should be linked with libglusterfs
for GF_FREE/__gf_free.
(Much grumbling about libglusterfs being the kitchen sink of gluster
elided. This would not be necessary if there were two or more libs,
a gluster "runtime" library with common gluster code shared by the
xlators and daemons, and a utility library with things like the
rbtree, memory allocation, and whatnot.)
So. Link at build time or link at runtime? For truth-and-beauty, link
with libglusterfs.so at build time. Without truth-and-beauty, don't
link with libglusterfs and rely on the other things that link with
libglusterfs to provide resolution of __gf_free().
Truth-and-beauty it is. But how to generate the headers first, then
build libglusterfs, then come back and build libgfxdr? Autotools is a
maze of twisty passages, all different. Things that work with gnu
make on linux don't work with the BSD make. Finally I hit on this
solution. Add a shadow directory where make only generates the headers,
then build libglusterfs using the generated headers, and finally build
libgfxdr and link with libglusterfs.
See original BZ 1330604
change http://review.gluster.org/14085
Change-Id: Iede8a30e3103176cb8f0b054885f30fcb352492b
BUG: 1429696
Signed-off-by: Kaleb S. KEITHLEY <kkeithle at redhat.com>
Reviewed-on: https://review.gluster.org/16873
NetBSD-regression: NetBSD Build System <jenkins at build.gluster.org>
CentOS-regression: Gluster Build System <jenkins at build.gluster.org>
Smoke: Gluster Build System <jenkins at build.gluster.org>
Reviewed-by: Niels de Vos <ndevos at redhat.com>
--
You are receiving this mail because:
You are on the CC list for the bug.
Unsubscribe from this bug https://bugzilla.redhat.com/token.cgi?t=hCs6aYxNlK&a=cc_unsubscribe
More information about the Bugs
mailing list