Question with compiling 4.12rc2 and ceph.
L. van Belle
belle at samba.org
Wed Feb 5 16:06:06 UTC 2020
hai,
I have a question,
Im working on the 4.12.0rc2 packages for debian buster.
im having a few problems with these parts in source3/wscript mainly the ceph
part.
I was thinking base on :
--with-libcephfs no longer supported, please use compiler
flags instead, e.g. GCC LIBRARY_PATH and C_INCLUDE_PATH''')
That this would be correct :
--with-libcephfs=/usr/lib/$(DEB_HOST_MULTIARCH) \
>From source3/wscript
opt.add_option('--with-libcephfs',
help=("Directory under which libcephfs is installed"),
action="store", dest='libcephfs_dir', default=None)
and
conf.env['CFLAGS_CEPHFS'] = "-D_FILE_OFFSET_BITS=64"
if Options.options.libcephfs_dir:
Logs.error('''--with-libcephfs no longer supported, please use
compiler
flags instead, e.g. GCC LIBRARY_PATH and
C_INCLUDE_PATH''')
sys.exit(1)
if (Options.options.with_cephfs and
conf.CHECK_HEADERS('cephfs/libcephfs.h', False, False, 'cephfs') and
conf.CHECK_LIB('cephfs', shlib=True)):
if (Options.options.with_acl_support and
conf.CHECK_FUNCS_IN('ceph_statx', 'cephfs',
headers='cephfs/libcephfs.h')):
conf.DEFINE('HAVE_CEPH', '1')
else:
Logs.warn('''Ceph support disabled due to --without-acl-support
or lack of ceph_statx support''')
conf.undefine('HAVE_CEPH')
which translates in debian/rules to :
override_dh_shlibdeps:
LD_LIBRARY_PATH=$(DESTDIR)/usr/lib/$(DEB_HOST_MULTIARCH)/samba:$$LD_LIBRARY_
PATH \
dh_shlibdeps -a -Xceph.so -Xglusterfs.so -Xsnapper.so
-Xctdb_mutex_ceph_rados_helper
ifneq (,$(filter amd64 arm64 armel armhf i386 mips64el mipsel ppc64el ppc64
s390x x32, $(DEB_HOST_ARCH)))
LD_LIBRARY_PATH=$(DESTDIR)/usr/lib/$(DEB_HOST_MULTIARCH)/samba:$$LD_LIBRARY_
PATH \
dh_shlibdeps -a -- -pvfsceph -dRecommends \
-e debian/samba-vfs-modules/usr/lib/*/samba/vfs/ceph.so
LD_LIBRARY_PATH=$(DESTDIR)/usr/lib/$(DEB_HOST_MULTIARCH)/samba:$$LD_LIBRARY_
PATH \
dh_shlibdeps -a -- -prados -dRecommends \
-e debian/ctdb/usr/lib/*/ctdb/ctdb_mutex_ceph_rados_helper
endif
ifeq ($(DEB_HOST_ARCH_OS), linux)
LD_LIBRARY_PATH=$(DESTDIR)/usr/lib/$(DEB_HOST_MULTIARCH)/samba:$$LD_LIBRARY_
PATH \
dh_shlibdeps -a -- -pvfsglusterfs -dRecommends \
-e debian/samba-vfs-modules/usr/lib/*/samba/vfs/glusterfs.so
endif
LD_LIBRARY_PATH=$(DESTDIR)/usr/lib/$(DEB_HOST_MULTIARCH)/samba:$$LD_LIBRARY_
PATH \
dh_shlibdeps -a -- -pvfssnapper -dRecommends \
-e debian/samba-vfs-modules/usr/lib/*/samba/vfs/snapper.so
Now, my problem here, i am at the point that most is build and looks good,
but im stopped at this part.
override_dh_shlibdeps:
LD_LIBRARY_PATH=$(DESTDIR)/usr/lib/$(DEB_HOST_MULTIARCH)/samba:$$LD_LIBRARY_
PATH \
dh_shlibdeps -a -Xceph.so -Xglusterfs.so -Xsnapper.so
-Xctdb_mutex_ceph_rados_helper
ifneq (,$(filter amd64 arm64 armel armhf i386 mips64el mipsel ppc64el ppc64
s390x x32, $(DEB_HOST_ARCH)))
LD_LIBRARY_PATH=$(DESTDIR)/usr/lib/$(DEB_HOST_MULTIARCH)/samba:$$LD_LIBRARY_
PATH \
dh_shlibdeps -a -- -pvfsceph -dRecommends \
-e debian/samba-vfs-modules/usr/lib/*/samba/vfs/ceph.so
Because it cant find debian/samba-vfs-modules/usr/lib/*/samba/vfs/ceph.so
But i found these 2. ( from manualy .configure make .. )
samba-4.12.0rc2/bin/default/source3/modules/libvfs_module_ceph.so
samba-4.12.0rc2/bin/modules/vfs/ceph.so
So, if i just run : ./configure && make && make install, its all done
successfully.
And ceph.so is created correctly, i dont see what i mis here.
Im doing something wrong with the parameter
--with-libcephfs=/usr/lib/$(DEB_HOST_MULTIARCH) \
At least thats what im thinking, but i dont see what.
And this if the part of debian/rules that configures it.
conf_args = \
--prefix=/usr \
--enable-fhs \
--sysconfdir=/etc \
--localstatedir=/var \
--libexecdir=/usr/lib/$(DEB_HOST_MULTIARCH) \
--with-privatedir=/var/lib/samba/private \
--with-smbpasswd-file=/etc/samba/smbpasswd \
--with-piddir=/run/samba \
--with-pammodulesdir=/lib/$(DEB_HOST_MULTIARCH)/security \
--with-pam \
--with-syslog \
--with-utmp \
--with-winbind \
--with-quota \
--with-shared-modules=idmap_rid,idmap_ad,idmap_adex,idmap_hash,idmap_ldap,id
map_tdb2,vfs_dfs_samba4,auth_samba4,vfs_nfs4acl_xattr \
--with-automount \
--with-ldap \
--with-ads \
--with-dnsupdate \
--with-gpgme \
--libdir=/usr/lib/$(DEB_HOST_MULTIARCH) \
--with-modulesdir=/usr/lib/$(DEB_HOST_MULTIARCH)/samba \
--datadir=/usr/share \
--with-lockdir=/run/samba \
--with-statedir=/var/lib/samba \
--with-cachedir=/var/cache/samba \
--enable-avahi \
--disable-rpath \
--disable-rpath-install \
--bundled-libraries=NONE,pytevent,iniparser,roken,replace,wind,hx509,asn1,he
imbase,hcrypto,krb5,gssapi,heimntlm,hdb,kdc,com_err,compile_et,asn1_compile
\
--builtin-libraries=ccan,samba-cluster-support \
--minimum-library-version="$(shell ./debian/autodeps.py
--minimum-library-version)" \
--with-cluster-support \
--with-socketpath=/run/ctdb/ctdbd.socket \
--with-logdir=/var/log/ctdb \
--with-libcephfs=/usr/lib/$(DEB_HOST_MULTIARCH) \
--enable-etcd-reclock \
--enable-spotlight
ifneq (,$(filter amd64 arm64 armel armhf i386 mips64el mipsel ppc64el ppc64
s390x x32, $(DEB_HOST_ARCH)))
conf_args += \
--with-libcephfs=/usr/lib/$(DEB_HOST_MULTIARCH) \
--enable-ceph-reclock
else
conf_args += \
--disable-cephfs
Endif
So if anyone has any suggestions? Very appriciated.
Thanks in advance..
Greetz,
Louis
More information about the samba-technical
mailing list