本文并不说明如何编写一个xlator。在glusterfs3.6.1下验证成功
目标在glusterfs-3.6.1/xlators/debug/下建立一个自己的xlator库并可以统一安装到系统目录下
tar zxvf glusterfs3.6.1.tar.gz cd glusterfs3.6.1 |
mkdir -p xlators/debug/testX/src/ |
vim configure.ac 增加以下语句在AC_CONFIG_FILES中 xlators/debug/testX/Makefile xlators/debug/testX/src/Makefile |
cd xlators/debug/ vim Makefile.am 在SUBDIRS变量的最后增加目录名testX |
cd testX vim Makefile.am 文件内容如下: SUBDIRS = src CLEANFILES = |
cd src vim Makefile.am 文件内容如下: xlator_LTLIBRARIES = testX.la xlatordir = $(libdir)/glusterfs/$(PACKAGE_VERSION)/xlator/testX
testX _la_LDFLAGS = -module -avoid-version
testX _la_SOURCES = testX.c testX _la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la
noinst_HEADERS = testX.h AM_CPPFLAGS = $(GF_CPPFLAGS) -I$(top_srcdir)/libglusterfs/src
AM_CFLAGS = -Wall $(GF_CFLAGS)
CLEANFILES =
|
说明:
要上图中的testX_la*中的前缀testX必须和xlator_LTLIBRARIES的文件名前缀一致
xlator_LTLIBRARIES后为要生成的库的名字
xlatordir后为存放库的路径,上图中将testX.so库存放在安装目录下的xlator的testX目录下
testX_la_SOURCES后跟.c文件列表
noinst_HEADERS后跟头文件列表
编辑完成后,从新进入到glusterfs3.6.1目录下,运行如下命令即可将新的testX文件安装到a安装目录下的testX目录中
cd ../../../../ ./autogen.sh ./ configure make make install |
原文地址:http://blog.csdn.net/fly542/article/details/41212621