Description of problem: During GlusterFS 5.2 installation command "make" fails to find reference to "dlclose". Result is failure to install. Version-Release number of selected component (if applicable): File "glusterfs-5.2.tar.gz" was used for installation on Centos 6 virtual system that runs kernel version 2.6.32-696 on Azure. How reproducible: any time Steps to Reproduce: 1. Run ./autogen.sh. 2. Run ./configure --build=x86_64-redhat-linux-gnu --host=x86_64-redhat-linux-gnu --target=x86_64-redhat-linux-gnu --program-prefix= --prefix=/usr --exec-prefix=/usr --bindir=/usr/bin --sbindir=/usr/sbin --sysconfdir=/etc --datadir=/usr/share --includedir=/usr/include --libdir=/usr/lib64 --libexecdir=/usr/libexec --localstatedir=/var --sharedstatedir=/var/lib --mandir=/usr/share/man --infodir=/usr/share/info --without-tmpfilesdir --disable-syslog --enable-gnfs GlusterFS configure summary =========================== FUSE client : yes Infiniband verbs : yes epoll IO multiplex : yes fusermount : yes readline : yes georeplication : yes Linux-AIO : yes Enable Debug : no Enable ASAN : no Block Device xlator : yes glupy : yes Use syslog : no XML output : yes Encryption xlator : yes Unit Tests : no Track priv ports : yes POSIX ACLs : yes Data Classification : yes SELinux features : yes firewalld-config : no Events : yes EC dynamic support : x64 sse avx Use memory pools : yes Nanosecond m/atimes : yes Server components : yes Legacy gNFS server : yes IPV6 default : no Use TIRPC : missing With Python : 2.6 Cloudsync : yes 3. Failure could be reproduced by doing the next: Go to the directory: [root@VN-SC-2 src]# pwd ./xlators/mgmt/glusterd/src Run: [root@VN-SC-2 src]# make clean test -z "" || rm -f rm -rf .libs _libs test -z "glusterd.la" || rm -f glusterd.la rm -f "./so_locations" rm -f *.o rm -f *.lo Run "make": Actual results: [root@VN-SC-2 src]# make CC glusterd_la-glusterd.lo CC glusterd_la-glusterd-handler.lo CC glusterd_la-glusterd-sm.lo CC glusterd_la-glusterd-op-sm.lo CC glusterd_la-glusterd-utils.lo CC glusterd_la-glusterd-rpc-ops.lo CC glusterd_la-glusterd-store.lo CC glusterd_la-glusterd-handshake.lo CC glusterd_la-glusterd-pmap.lo CC glusterd_la-glusterd-volgen.lo CC glusterd_la-glusterd-rebalance.lo CC glusterd_la-glusterd-quota.lo CC glusterd_la-glusterd-bitrot.lo CC glusterd_la-glusterd-geo-rep.lo CC glusterd_la-glusterd-replace-brick.lo CC glusterd_la-glusterd-log-ops.lo CC glusterd_la-glusterd-tier.lo CC glusterd_la-glusterd-volume-ops.lo CC glusterd_la-glusterd-brick-ops.lo CC glusterd_la-glusterd-mountbroker.lo CC glusterd_la-glusterd-syncop.lo CC glusterd_la-glusterd-hooks.lo CC glusterd_la-glusterd-volume-set.lo CC glusterd_la-glusterd-locks.lo CC glusterd_la-glusterd-snapshot.lo CC glusterd_la-glusterd-mgmt-handler.lo CC glusterd_la-glusterd-mgmt.lo CC glusterd_la-glusterd-peer-utils.lo CC glusterd_la-glusterd-statedump.lo CC glusterd_la-glusterd-snapshot-utils.lo CC glusterd_la-glusterd-conn-mgmt.lo CC glusterd_la-glusterd-proc-mgmt.lo CC glusterd_la-glusterd-svc-mgmt.lo CC glusterd_la-glusterd-shd-svc.lo CC glusterd_la-glusterd-nfs-svc.lo CC glusterd_la-glusterd-quotad-svc.lo CC glusterd_la-glusterd-svc-helper.lo CC glusterd_la-glusterd-conn-helper.lo CC glusterd_la-glusterd-snapd-svc.lo CC glusterd_la-glusterd-snapd-svc-helper.lo CC glusterd_la-glusterd-bitd-svc.lo CC glusterd_la-glusterd-scrub-svc.lo CC glusterd_la-glusterd-server-quorum.lo CC glusterd_la-glusterd-reset-brick.lo CC glusterd_la-glusterd-tierd-svc.lo CC glusterd_la-glusterd-tierd-svc-helper.lo CC glusterd_la-glusterd-gfproxyd-svc.lo CC glusterd_la-glusterd-gfproxyd-svc-helper.lo CCLD glusterd.la .libs/glusterd_la-glusterd-utils.o: In function `glusterd_get_volopt_content': /home/col/glusterfs-5.2/xlators/mgmt/glusterd/src/glusterd-utils.c:13417: undefined reference to `dlclose' .libs/glusterd_la-glusterd-utils.o: In function `glusterd_get_value_for_vme_entry': /home/col/glusterfs-5.2/xlators/mgmt/glusterd/src/glusterd-utils.c:12984: undefined reference to `dlclose' .libs/glusterd_la-glusterd-volgen.o: In function `_gd_get_option_type': /home/col/glusterfs-5.2/xlators/mgmt/glusterd/src/glusterd-volgen.c:7009: undefined reference to `dlclose' .libs/glusterd_la-glusterd-quota.o: In function `_glusterd_validate_quota_opts': /home/col/glusterfs-5.2/xlators/mgmt/glusterd/src/glusterd-quota.c:1943: undefined reference to `dlclose' collect2: ld returned 1 exit status make: *** [glusterd.la] Error 1 Expected results: should be no failures. Additional info: It seems linker flag "-ldl" is not used by make. We put flag "-ldl" into command that is called by "make" and result was success: [root@VN-SC-2 src]# /bin/sh ../../../../libtool --silent --tag=CC --mode=link gcc -Wall -g -O2 -g -rdynamic -Wformat -Werror=format-security -Werror=implicit-function-declaration -I/usr/include/libxml2 -g -O2 -g -rdynamic -Wformat -Werror=format-security -Werror=implicit-function-declaration -module -avoid-version -export-symbols ../../../../xlators/xlator.sym -luuid -Wl,--no-undefined -o glusterd.la -rpath /usr/lib64/glusterfs/5.2/xlator/mgmt glusterd_la-glusterd.lo glusterd_la-glusterd-handler.lo glusterd_la-glusterd-sm.lo glusterd_la-glusterd-op-sm.lo glusterd_la-glusterd-utils.lo glusterd_la-glusterd-rpc-ops.lo glusterd_la-glusterd-store.lo glusterd_la-glusterd-handshake.lo glusterd_la-glusterd-pmap.lo glusterd_la-glusterd-volgen.lo glusterd_la-glusterd-rebalance.lo glusterd_la-glusterd-quota.lo glusterd_la-glusterd-bitrot.lo glusterd_la-glusterd-geo-rep.lo glusterd_la-glusterd-replace-brick.lo glusterd_la-glusterd-log-ops.lo glusterd_la-glusterd-tier.lo glusterd_la-glusterd-volume-ops.lo glusterd_la-glusterd-brick-ops.lo glusterd_la-glusterd-mountbroker.lo glusterd_la-glusterd-syncop.lo glusterd_la-glusterd-hooks.lo glusterd_la-glusterd-volume-set.lo glusterd_la-glusterd-locks.lo glusterd_la-glusterd-snapshot.lo glusterd_la-glusterd-mgmt-handler.lo glusterd_la-glusterd-mgmt.lo glusterd_la-glusterd-peer-utils.lo glusterd_la-glusterd-statedump.lo glusterd_la-glusterd-snapshot-utils.lo glusterd_la-glusterd-conn-mgmt.lo glusterd_la-glusterd-proc-mgmt.lo glusterd_la-glusterd-svc-mgmt.lo glusterd_la-glusterd-shd-svc.lo glusterd_la-glusterd-nfs-svc.lo glusterd_la-glusterd-quotad-svc.lo glusterd_la-glusterd-svc-helper.lo glusterd_la-glusterd-conn-helper.lo glusterd_la-glusterd-snapd-svc.lo glusterd_la-glusterd-snapd-svc-helper.lo glusterd_la-glusterd-bitd-svc.lo glusterd_la-glusterd-scrub-svc.lo glusterd_la-glusterd-server-quorum.lo glusterd_la-glusterd-reset-brick.lo glusterd_la-glusterd-tierd-svc.lo glusterd_la-glusterd-tierd-svc-helper.lo glusterd_la-glusterd-gfproxyd-svc.lo glusterd_la-glusterd-gfproxyd-svc-helper.lo ../../../../libglusterfs/src/libglusterfs.la ../../../../rpc/xdr/src/libgfxdr.la ../../../../rpc/rpc-lib/src/libgfrpc.la -lxml2 -lcrypto -lurcu-bp -lurcu-cds -llvm2app -lrt -lpthread -lcrypto -ldl [root@VN-SC-2 src]# make make: Nothing to be done for `all'.
Does this still happen?
Installation of Glisters 6.2 does not have this problem. Viktor.