build fails on x86 (32 bit) at linking stage: /usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(cmd_assemble.o): in function `atomic64_read_acquire': cmd_assemble.c:(.text+0x0): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here #200
Tried to build bcachefs-tools-9999 on Gentoo Linux (30c4b24b77b64b64179f74c1c615b9a36eaaa8bd git-master at that time ) on my Thinkpad T60 but it fails in the end:
[...]
Finished release [optimized] target(s) in 10m 26s
[LD] bcachefs
i686-pc-linux-gnu-gcc -Wl,-O1 -Wl,--as-needed -O2 -march=prescott -pipe -std=gnu11 -MMD -Wall -fPIC -Wno-pointer-sign -Wno-deprecated-declarations -fno-strict-aliasing -fno-delete-null-pointer-checks -I. -Iinclude -Iraid -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -D_LGPL_SOURCE -DRCU_MEMBARRIER -DZSTD_STATIC_LINKING_ONLY -DFUSE_USE_VERSION=35 -DNO_BCACHEFS_CHARDEV -DNO_BCACHEFS_FS -DNO_BCACHEFS_SYSFS -DVERSION_STRING='"1.4.0"' -Wno-unused-but-set-variable -Wno-stringop-overflow -Wno-zero-length-bounds -Wno-missing-braces -Wno-shift-overflow -Wno-enum-conversion -I/usr/include/blkid -I/usr/include/uuid -Wl,--whole-archive libbcachefs.a rust-src/target/release/libbcachefs_rust.a -Wl,--no-whole-archive -lblkid -luuid -lurcu-common -lurcu -lsodium -lz -llz4 -lzstd -ludev -lkeyutils -lm -lpthread -lrt -lkeyutils -laio -ldl -o bcachefs
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(cmd_assemble.o): in function `atomic64_read_acquire':
cmd_assemble.c:(.text+0x0): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(cmd_attr.o): in function `atomic64_read_acquire':
cmd_attr.c:(.text+0x170): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(cmd_counters.o): in function `atomic64_read_acquire':
cmd_counters.c:(.text+0x0): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(cmd_data.o): in function `atomic64_read_acquire':
cmd_data.c:(.text+0x0): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(cmd_device.o): in function `atomic64_read_acquire':
cmd_device.c:(.text+0x1e5): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(cmd_dump.o): in function `atomic64_read_acquire':
cmd_dump.c:(.text+0x1e5): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(cmd_format.o): in function `atomic64_read_acquire':
cmd_format.c:(.text+0x0): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(cmd_fs.o): in function `atomic64_read_acquire':
cmd_fs.c:(.text+0x18de): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(cmd_fsck.o): in function `atomic64_read_acquire':
cmd_fsck.c:(.text+0x347): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(cmd_key.o): in function `atomic64_read_acquire':
cmd_key.c:(.text+0x0): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(cmd_kill_btree_node.o): in function `atomic64_read_acquire':
cmd_kill_btree_node.c:(.text+0x0): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(cmd_list_journal.o): in function `atomic64_read_acquire':
cmd_list_journal.c:(.text+0x178): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(cmd_migrate.o): in function `atomic64_read_acquire':
cmd_migrate.c:(.text+0x1e8c): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(cmd_option.o): in function `atomic64_read_acquire':
cmd_option.c:(.text+0x0): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(cmd_run.o): in function `atomic64_read_acquire':
cmd_run.c:(.text+0x0): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(cmd_subvolume.o): in function `atomic64_read_acquire':
cmd_subvolume.c:(.text+0x0): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(cmd_version.o): in function `atomic64_read_acquire':
cmd_version.c:(.text+0x0): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(crypto.o): in function `atomic64_read_acquire':
crypto.c:(.text+0x0): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(libbcachefs.o): in function `atomic64_read_acquire':
libbcachefs.c:(.text+0xa2): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(acl.o): in function `atomic64_read_acquire':
acl.c:(.text+0x0): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(alloc_background.o): in function `atomic64_read_acquire':
alloc_background.c:(.text+0x1159): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(alloc_foreground.o): in function `atomic64_read_acquire':
alloc_foreground.c:(.text+0x2b2b): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(backpointers.o): in function `atomic64_read_acquire':
backpointers.c:(.text+0x849): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(bkey.o): in function `atomic64_read_acquire':
bkey.c:(.text+0x0): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(bkey_methods.o): in function `atomic64_read_acquire':
bkey_methods.c:(.text+0x134): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(bkey_sort.o): in function `atomic64_read_acquire':
bkey_sort.c:(.text+0x26a): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(bset.o): in function `atomic64_read_acquire':
bset.c:(.text+0x5f3): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(btree_cache.o): in function `atomic64_read_acquire':
btree_cache.c:(.text+0x93e): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(btree_gc.o): in function `atomic64_read_acquire':
btree_gc.c:(.text+0x6f5e): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(btree_io.o): in function `atomic64_read_acquire':
btree_io.c:(.text+0x3360): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(btree_iter.o): in function `atomic64_read_acquire':
btree_iter.c:(.text+0xd1a): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(btree_journal_iter.o): in function `atomic64_read_acquire':
btree_journal_iter.c:(.text+0x57c): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(btree_key_cache.o): in function `atomic64_read_acquire':
btree_key_cache.c:(.text+0x12ad): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(btree_locking.o): in function `atomic64_read_acquire':
btree_locking.c:(.text+0x91): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(btree_trans_commit.o): in function `atomic64_read_acquire':
btree_trans_commit.c:(.text+0xfeb): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(btree_update.o): in function `atomic64_read_acquire':
btree_update.c:(.text+0xca5): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(btree_update_interior.o): in function `atomic64_read_acquire':
btree_update_interior.c:(.text+0x6b13): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(btree_write_buffer.o): in function `atomic64_read_acquire':
btree_write_buffer.c:(.text+0x13bd): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(buckets.o): in function `atomic64_read_acquire':
buckets.c:(.text+0x23e4): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(buckets_waiting_for_journal.o): in function `atomic64_read_acquire':
buckets_waiting_for_journal.c:(.text+0x1af): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(checksum.o): in function `atomic64_read_acquire':
checksum.c:(.text+0xa6a): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(clock.o): in function `atomic64_read_acquire':
clock.c:(.text+0x54): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(compress.o): in function `atomic64_read_acquire':
compress.c:(.text+0xc94): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(counters.o): in function `atomic64_read_acquire':
counters.c:(.text+0xd3): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(data_update.o): in function `atomic64_read_acquire':
data_update.c:(.text+0x25f2): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(debug.o): in function `atomic64_read_acquire':
debug.c:(.text+0x17d): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(dirent.o): in function `atomic64_read_acquire':
dirent.c:(.text+0x438): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(disk_groups.o): in function `atomic64_read_acquire':
disk_groups.c:(.text+0x6ad): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(ec.o): in function `atomic64_read_acquire':
ec.c:(.text+0x2a95): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(errcode.o): in function `atomic64_read_acquire':
errcode.c:(.text+0x0): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(error.o): in function `atomic64_read_acquire':
error.c:(.text+0x0): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(extent_update.o): in function `atomic64_read_acquire':
extent_update.c:(.text+0x82d): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(extents.o): in function `atomic64_read_acquire':
extents.c:(.text+0x571): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(fs-common.o): in function `atomic64_read_acquire':
fs-common.c:(.text+0x0): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(fsck.o): in function `atomic64_read_acquire':
fsck.c:(.text+0x5a46): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(inode.o): in function `atomic64_read_acquire':
inode.c:(.text+0x1c05): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(io_misc.o): in function `atomic64_read_acquire':
io_misc.c:(.text+0x1d7): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(io_read.o): in function `atomic64_read_acquire':
io_read.c:(.text+0x777): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(io_write.o): in function `atomic64_read_acquire':
io_write.c:(.text+0x1707): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(journal.o): in function `atomic64_read_acquire':
journal.c:(.text+0x11d): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(journal_io.o): in function `atomic64_read_acquire':
journal_io.c:(.text+0x442d): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(journal_reclaim.o): in function `atomic64_read_acquire':
journal_reclaim.c:(.text+0x529): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(journal_sb.o): in function `atomic64_read_acquire':
journal_sb.c:(.text+0x77f): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(journal_seq_blacklist.o): in function `atomic64_read_acquire':
journal_seq_blacklist.c:(.text+0x2a5): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(keylist.o): in function `atomic64_read_acquire':
keylist.c:(.text+0x0): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(logged_ops.o): in function `atomic64_read_acquire':
logged_ops.c:(.text+0x0): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(lru.o): in function `atomic64_read_acquire':
lru.c:(.text+0x0): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(migrate.o): in function `atomic64_read_acquire':
migrate.c:(.text+0x0): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(move.o): in function `atomic64_read_acquire':
move.c:(.text+0xce1): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(movinggc.o): in function `atomic64_read_acquire':
movinggc.c:(.text+0x636): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(nocow_locking.o): in function `atomic64_read_acquire':
nocow_locking.c:(.text+0x0): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(opts.o): in function `atomic64_read_acquire':
opts.c:(.text+0xe0b): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(quota.o): in function `atomic64_read_acquire':
quota.c:(.text+0x134): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(rebalance.o): in function `atomic64_read_acquire':
rebalance.c:(.text+0x1317): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(recovery.o): in function `atomic64_read_acquire':
recovery.c:(.text+0x1333): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(reflink.o): in function `atomic64_read_acquire':
reflink.c:(.text+0xd3c): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(replicas.o): in function `atomic64_read_acquire':
replicas.c:(.text+0xf62): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(sb-clean.o): in function `atomic64_read_acquire':
sb-clean.c:(.text+0x106): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(sb-downgrade.o): in function `atomic64_read_acquire':
sb-downgrade.c:(.text+0x594): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(sb-errors.o): in function `atomic64_read_acquire':
sb-errors.c:(.text+0x330): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(sb-members.o): in function `atomic64_read_acquire':
sb-members.c:(.text+0xf44): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(six.o): in function `atomic64_read_acquire':
six.c:(.text+0x264): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(snapshot.o): in function `atomic64_read_acquire':
snapshot.c:(.text+0x160c): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(subvolume.o): in function `atomic64_read_acquire':
subvolume.c:(.text+0x487): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(super-io.o): in function `atomic64_read_acquire':
super-io.c:(.text+0x803): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(super.o): in function `atomic64_read_acquire':
super.c:(.text+0x122f): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(trace.o): in function `atomic64_read_acquire':
trace.c:(.text+0x0): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(two_state_shared_lock.o): in function `atomic64_read_acquire':
two_state_shared_lock.c:(.text+0x0): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(util.o): in function `atomic64_read_acquire':
util.c:(.text+0xd85): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(xattr.o): in function `atomic64_read_acquire':
xattr.c:(.text+0xd03): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(atomic64.o): in function `atomic64_read_acquire':
atomic64.c:(.text+0x57): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(bio.o): in function `atomic64_read_acquire':
bio.c:(.text+0x5c): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(blkdev.o): in function `atomic64_read_acquire':
blkdev.c:(.text+0x6bd): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(closure.o): in function `atomic64_read_acquire':
closure.c:(.text+0x188): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(fs.o): in function `atomic64_read_acquire':
fs.c:(.text+0x0): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(generic-radix-tree.o): in function `atomic64_read_acquire':
generic-radix-tree.c:(.text+0x291): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(kthread.o): in function `atomic64_read_acquire':
kthread.c:(.text+0x79): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(llist.o): in function `atomic64_read_acquire':
llist.c:(.text+0x0): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(mempool.o): in function `atomic64_read_acquire':
mempool.c:(.text+0x0): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(ratelimit.o): in function `atomic64_read_acquire':
ratelimit.c:(.text+0x0): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(rhashtable.o): in function `atomic64_read_acquire':
rhashtable.c:(.text+0x61f): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(sched.o): in function `atomic64_read_acquire':
sched.c:(.text+0x0): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(semaphore.o): in function `atomic64_read_acquire':
semaphore.c:(.text+0x0): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(shrinker.o): in function `atomic64_read_acquire':
shrinker.c:(.text+0x0): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(timer.o): in function `atomic64_read_acquire':
timer.c:(.text+0x35c): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(wait.o): in function `atomic64_read_acquire':
wait.c:(.text+0x8b): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(workqueue.o): in function `atomic64_read_acquire':
workqueue.c:(.text+0x4f1): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(qcow2.o): in function `atomic64_read_acquire':
qcow2.c:(.text+0x94): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
/usr/lib/gcc/i686-pc-linux-gnu/13/../../../../i686-pc-linux-gnu/bin/ld: libbcachefs.a(tools-util.o): in function `atomic64_read_acquire':
tools-util.c:(.text+0x76): multiple definition of `atomic64_read_acquire'; libbcachefs.a(bcachefs.o):bcachefs.c:(.text+0x64): first defined here
collect2: error: ld returned 1 exit status
make: *** [Makefile:184: bcachefs] Error 1
* ERROR: sys-fs/bcachefs-tools-9999::gentoo failed (compile phase):
* emake failed
Tried to build bcachefs-tools-9999 on Gentoo Linux (30c4b24b77b64b64179f74c1c615b9a36eaaa8bd git-master at that time ) on my Thinkpad T60 but it fails in the end:
Some details about the toolchaing and full build.log attached. emerge_info.txt bcachefs-tools-9999_20240105-174630.log