Trying to compile the project at Arch Linux and it fails:
Operating system Linux
CPU x86_64
Big endian no
Compiler gcc
Cross compile no
Static build no
Wordsize 64
zlib yes
Linux AIO support yes
POSIX AIO support yes
POSIX AIO support needs -lrt yes
POSIX AIO fsync yes
POSIX pshared support yes
Solaris AIO support no
__sync_fetch_and_add yes
__sync_synchronize yes
__sync_val_compare_and_swap yes
libverbs no
rdmacm no
asprintf() yes
vasprintf() yes
Linux fallocate yes
POSIX fadvise yes
POSIX fallocate yes
sched_setaffinity(3 arg) yes
sched_setaffinity(2 arg) no
clock_gettime yes
CLOCK_MONOTONIC yes
CLOCK_MONOTONIC_RAW yes
CLOCK_MONOTONIC_PRECISE no
clockid_t yes
gettimeofday yes
fdatasync yes
sync_file_range yes
EXT4 move extent yes
Linux splice(2) yes
GUASI no
libnuma yes
libnuma v2 yes
strsep yes
strcasestr yes
strlcat no
getopt_long_only() yes
inet_aton yes
socklen_t yes
__thread yes
gtk 2.18 or higher yes
RUSAGE_THREAD yes
SCHED_IDLE yes
TCP_NODELAY yes
Net engine window_size yes
TCP_MAXSEG yes
RLIMIT_MEMLOCK yes
pwritev/preadv yes
pwritev2/preadv2 yes
IPv6 helpers yes
http engine yes
Rados engine no
Rados Block Device engine no
setvbuf yes
Gluster API engine yes
Gluster API use fadvise no
Gluster API trim support no
s390_z196_facilities no
HDFS engine no
MTD yes
libpmem no
libpmemblk no
PMDK pmemblk engine no
PMDK dev-dax engine no
PMDK libpmem engine no
DDN's Infinite Memory Engine no
iscsi engine no
lex/yacc for arithmetic no
getmntent yes
getmntinfo no
Static Assert yes
bool yes
strndup yes
Valgrind headers no
Zoned block device support yes
march_armv8_a_crc_crypto no
cuda no
mkdir(a, b) yes
Build march=native no
CUnit no
__kernel_rwf_t yes
-Wimplicit-fallthrough yes
MADV_HUGEPAGE yes
FIO_VERSION = fio-3.14
CC crc/crc16.o
CC crc/crc32.o
CC crc/crc32c-arm64.o
CC crc/crc32c-intel.o
CC crc/crc32c.o
CC crc/crc64.o
CC crc/crc7.o
CC crc/fnv.o
CC crc/md5.o
CC crc/murmur3.o
CC crc/sha1.o
CC crc/sha256.o
CC crc/sha3.o
CC crc/sha512.o
CC crc/test.o
CC crc/xxhash.o
CC lib/axmap.o
CC lib/bloom.o
CC lib/flist_sort.o
CC lib/gauss.o
CC lib/getrusage.o
CC lib/hweight.o
CC lib/ieee754.o
CC lib/lfsr.o
CC lib/memalign.o
CC lib/memcpy.o
CC lib/mountcheck.o
CC lib/num2str.o
CC lib/output_buffer.o
CC lib/pattern.o
CC lib/prio_tree.o
CC lib/rand.o
CC lib/rbtree.o
CC lib/strntol.o
CC lib/zipf.o
CC gettime.o
CC ioengines.o
CC init.o
CC stat.o
CC log.o
CC time.o
CC filesetup.o
CC eta.o
CC verify.o
CC memory.o
CC io_u.o
CC parse.o
CC fio_sem.o
CC rwlock.o
CC pshared.o
CC options.o
CC smalloc.o
CC filehash.o
CC profile.o
CC debug.o
CC engines/cpu.o
CC engines/mmap.o
CC engines/sync.o
CC engines/null.o
CC engines/net.o
CC engines/ftruncate.o
CC engines/filecreate.o
CC server.o
CC client.o
CC iolog.o
CC backend.o
CC libfio.o
CC flow.o
CC cconv.o
CC gettime-thread.o
CC helpers.o
CC json.o
CC idletime.o
CC td_error.o
CC profiles/tiobench.o
CC profiles/act.o
CC io_u_queue.o
CC filelock.o
CC workqueue.o
CC rate-submit.o
CC optgroup.o
CC helper_thread.o
CC steadystate.o
CC zone-dist.o
CC engines/libaio.o
CC engines/posixaio.o
CC engines/falloc.o
CC engines/e4defrag.o
CC engines/splice.o
CC engines/http.o
CC oslib/asprintf.o
CC oslib/strlcat.o
CC engines/glusterfs.o
CC engines/glusterfs_sync.o
engines/glusterfs.c: In function ‘fio_gf_open_file’:
engines/glusterfs.c:291:10: error: too few arguments to function ‘glfs_ftruncate’
ret = glfs_ftruncate(g->fd, f->real_file_size);
^~~~~~~~~~~~~~
In file included from engines/gfapi.h:1,
from engines/glusterfs.c:8:
/usr/include/glusterfs/api/glfs.h:768:1: note: declared here
glfs_ftruncate(glfs_fd_t *fd, off_t length, struct glfs_stat *prestat,
^~~~~~~~~~~~~~
engines/glusterfs.c:353:10: error: too few arguments to function ‘glfs_fsync’
if (glfs_fsync(g->fd) < 0) {
^~~~~~~~~~
In file included from engines/gfapi.h:1,
from engines/glusterfs.c:8:
/usr/include/glusterfs/api/glfs.h:790:1: note: declared here
glfs_fsync(glfs_fd_t *fd, struct glfs_stat *prestat,
^~~~~~~~~~
make: *** [Makefile:370: engines/glusterfs.o] Error 1
make: *** Waiting for unfinished jobs....
engines/glusterfs_sync.c: In function ‘fio_gf_queue’:
engines/glusterfs_sync.c:45:9: error: too few arguments to function ‘glfs_fsync’
ret = glfs_fsync(g->fd);
^~~~~~~~~~
In file included from engines/gfapi.h:1,
from engines/glusterfs_sync.c:8:
/usr/include/glusterfs/api/glfs.h:790:1: note: declared here
glfs_fsync(glfs_fd_t *fd, struct glfs_stat *prestat,
^~~~~~~~~~
engines/glusterfs_sync.c:47:9: error: too few arguments to function ‘glfs_fdatasync’
ret = glfs_fdatasync(g->fd);
^~~~~~~~~~~~~~
In file included from engines/gfapi.h:1,
from engines/glusterfs_sync.c:8:
/usr/include/glusterfs/api/glfs.h:798:1: note: declared here
glfs_fdatasync(glfs_fd_t *fd, struct glfs_stat *prestat,
^~~~~~~~~~~~~~
make: *** [Makefile:373: engines/glusterfs_sync.o] Error 1
It looks like glusterfs changes their API.
The text was updated successfully, but these errors were encountered:
OK, that's pretty random, thanks gluster guys for breaking the API instead of adding new functions that take the stat arguments. I've pushed a fix for this, can you check that current master works?
Trying to compile the project at Arch Linux and it fails:
It looks like glusterfs changes their API.
The text was updated successfully, but these errors were encountered: