MariaDB 10.4 Riscv64 build status in Debian:
https://buildd.debian.org/status/package.php?p=mariadb-10.4&suite=experimental
Failure in log:
{preformatted}
[ 67%] Linking CXX executable sst_dump
cd /<<PKGBUILDDIR>>/builddir/storage/rocksdb && /usr/bin/cmake -E cmake_link_script CMakeFiles/sst_dump.dir/link.txt --verbose=1
/usr/bin/riscv64-linux-gnu-g++ -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -pie -fPIC -Wl,-z,relro,-z,now -fstack-protector --param=ssp-buffer-size=4 -O2 -g -static-libgcc -fno-omit-frame-pointer -fno-strict-aliasing -Wno-uninitialized -D_FORTIFY_SOURCE=2 -DDBUG_OFF -Wall -Wextra -Wformat-security -Wno-format-truncation -Wno-init-self -Wno-nonnull-compare -Wno-unused-parameter -Woverloaded-virtual -Wnon-virtual-dtor -Wvla -Wwrite-strings -Wl,-z,relro -Wl,-z,now CMakeFiles/sst_dump.dir/rocksdb/tools/sst_dump.cc.o -o sst_dump -lpthread librocksdblib.a -llz4 -lsnappy -lzstd -lz -lpthread -ldl
[ 67%] Building CXX object storage/rocksdb/CMakeFiles/rocksdb_aux_lib.dir/rdb_perf_context.cc.o
cd /<<PKGBUILDDIR>>/builddir/storage/rocksdb && /usr/bin/riscv64-linux-gnu-g++ -DDBUG_TRACE -DHAVE_CONFIG_H -DHAVE_SCHED_GETCPU=1 -DHAVE_TIMER_DELETE -DLZ4 -DOS_LINUX -DROCKSDB_FALLOCATE_PRESENT -DROCKSDB_LIB_IO_POSIX -DROCKSDB_MALLOC_USABLE_SIZE -DROCKSDB_PLATFORM_POSIX -DROCKSDB_SCHED_GETCPU_PRESENT -DROCKSDB_SUPPORT_THREAD_LOCAL -DSNAPPY -DZLIB -DZSTD -D_FILE_OFFSET_BITS=64 -I/<<PKGBUILDDIR>>/wsrep-lib/include -I/<<PKGBUILDDIR>>/wsrep-lib/wsrep-API/v26 -I/<<PKGBUILDDIR>>/builddir/include -I/<<PKGBUILDDIR>>/include -I/<<PKGBUILDDIR>>/sql -I/<<PKGBUILDDIR>>/builddir/extra/wolfssl -I/<<PKGBUILDDIR>>/extra/wolfssl/wolfssl -I/<<PKGBUILDDIR>>/extra/wolfssl/wolfssl/wolfssl -I/<<PKGBUILDDIR>>/builddir/storage/rocksdb -I/<<PKGBUILDDIR>>/storage/rocksdb/rocksdb -I/<<PKGBUILDDIR>>/storage/rocksdb/rocksdb/include -I/<<PKGBUILDDIR>>/storage/rocksdb/rocksdb/util -isystem /<<PKGBUILDDIR>>/storage/rocksdb/rocksdb/third-party/gtest-1.7.0/fused-src -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -pie -fPIC -Wl,-z,relro,-z,now -fstack-protector --param=ssp-buffer-size=4 -O2 -g -static-libgcc -fno-omit-frame-pointer -fno-strict-aliasing -Wno-uninitialized -D_FORTIFY_SOURCE=2 -DDBUG_OFF -Wall -Wextra -Wformat-security -Wno-format-truncation -Wno-init-self -Wno-nonnull-compare -Wno-unused-parameter -Woverloaded-virtual -Wnon-virtual-dtor -Wvla -Wwrite-strings -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -std=gnu++11 -o CMakeFiles/rocksdb_aux_lib.dir/rdb_perf_context.cc.o -c /<<PKGBUILDDIR>>/storage/rocksdb/rdb_perf_context.cc
[ 67%] Building CXX object storage/innobase/CMakeFiles/innobase_embedded.dir/pars/pars0sym.cc.o
cd /<<PKGBUILDDIR>>/builddir/storage/innobase && /usr/bin/riscv64-linux-gnu-g++ -DBTR_CUR_ADAPT -DBTR_CUR_HASH_ADAPT -DCOMPILER_HINTS -DDBUG_TRACE -DEMBEDDED_LIBRARY -DHAVE_C99_INITIALIZERS -DHAVE_CONFIG_H -DHAVE_FALLOC_PUNCH_HOLE_AND_KEEP_SIZE=1 -DHAVE_IB_LINUX_FUTEX=1 -DHAVE_LZ4=1 -DHAVE_LZ4_COMPRESS_DEFAULT=1 -DHAVE_NANOSLEEP=1 -DHAVE_SCHED_GETCPU=1 -DHAVE_SNAPPY=1 -DLINUX_NATIVE_AIO=1 -DMUTEX_EVENT -DWITH_INNODB_DISALLOW_WRITES -D_FILE_OFFSET_BITS=64 -I/<<PKGBUILDDIR>>/wsrep-lib/include -I/<<PKGBUILDDIR>>/wsrep-lib/wsrep-API/v26 -I/<<PKGBUILDDIR>>/builddir/include -I/<<PKGBUILDDIR>>/storage/innobase/include -I/<<PKGBUILDDIR>>/storage/innobase/handler -I/<<PKGBUILDDIR>>/libbinlogevents/include -I/<<PKGBUILDDIR>>/include -I/<<PKGBUILDDIR>>/sql -I/<<PKGBUILDDIR>>/builddir/extra/wolfssl -I/<<PKGBUILDDIR>>/extra/wolfssl/wolfssl -I/<<PKGBUILDDIR>>/extra/wolfssl/wolfssl/wolfssl -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -pie -fPIC -Wl,-z,relro,-z,now -fstack-protector --param=ssp-buffer-size=4 -O2 -g -static-libgcc -fno-omit-frame-pointer -fno-strict-aliasing -Wno-uninitialized -D_FORTIFY_SOURCE=2 -DDBUG_OFF -Wall -Wextra -Wformat-security -Wno-format-truncation -Wno-init-self -Wno-nonnull-compare -Wno-unused-parameter -Woverloaded-virtual -Wnon-virtual-dtor -Wvla -Wwrite-strings -Wdate-time -D_FORTIFY_SOURCE=2 -DUNIV_LINUX -D_GNU_SOURCE=1 -DHAVE_OPENSSL -DHAVE_WOLFSSL -DWOLFSSL_USER_SETTINGS -fPIC -fvisibility=hidden -std=gnu++11 -o CMakeFiles/innobase_embedded.dir/pars/pars0sym.cc.o -c /<<PKGBUILDDIR>>/storage/innobase/pars/pars0sym.cc
[ 67%] Building CXX object storage/perfschema/CMakeFiles/perfschema_embedded.dir/pfs_column_values.cc.o
cd /<<PKGBUILDDIR>>/builddir/storage/perfschema && /usr/bin/riscv64-linux-gnu-g++ -DDBUG_TRACE -DHAVE_CONFIG_H -DMYSQL_SERVER -D_FILE_OFFSET_BITS=64 -I/<<PKGBUILDDIR>>/wsrep-lib/include -I/<<PKGBUILDDIR>>/wsrep-lib/wsrep-API/v26 -I/<<PKGBUILDDIR>>/builddir/include -I/<<PKGBUILDDIR>> -I/<<PKGBUILDDIR>>/include -I/<<PKGBUILDDIR>>/sql -I/<<PKGBUILDDIR>>/builddir/sql -I/<<PKGBUILDDIR>>/builddir/extra/wolfssl -I/<<PKGBUILDDIR>>/extra/wolfssl/wolfssl -I/<<PKGBUILDDIR>>/extra/wolfssl/wolfssl/wolfssl -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -pie -fPIC -Wl,-z,relro,-z,now -fstack-protector --param=ssp-buffer-size=4 -O2 -g -static-libgcc -fno-omit-frame-pointer -fno-strict-aliasing -Wno-uninitialized -D_FORTIFY_SOURCE=2 -DDBUG_OFF -Wall -Wextra -Wformat-security -Wno-format-truncation -Wno-init-self -Wno-nonnull-compare -Wno-unused-parameter -Woverloaded-virtual -Wnon-virtual-dtor -Wvla -Wwrite-strings -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -fvisibility=hidden -std=gnu++11 -o CMakeFiles/perfschema_embedded.dir/pfs_column_values.cc.o -c /<<PKGBUILDDIR>>/storage/perfschema/pfs_column_values.cc
[ 67%] Building CXX object storage/perfschema/CMakeFiles/perfschema_embedded.dir/pfs_con_slice.cc.o
cd /<<PKGBUILDDIR>>/builddir/storage/perfschema && /usr/bin/riscv64-linux-gnu-g++ -DDBUG_TRACE -DHAVE_CONFIG_H -DMYSQL_SERVER -D_FILE_OFFSET_BITS=64 -I/<<PKGBUILDDIR>>/wsrep-lib/include -I/<<PKGBUILDDIR>>/wsrep-lib/wsrep-API/v26 -I/<<PKGBUILDDIR>>/builddir/include -I/<<PKGBUILDDIR>> -I/<<PKGBUILDDIR>>/include -I/<<PKGBUILDDIR>>/sql -I/<<PKGBUILDDIR>>/builddir/sql -I/<<PKGBUILDDIR>>/builddir/extra/wolfssl -I/<<PKGBUILDDIR>>/extra/wolfssl/wolfssl -I/<<PKGBUILDDIR>>/extra/wolfssl/wolfssl/wolfssl -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -pie -fPIC -Wl,-z,relro,-z,now -fstack-protector --param=ssp-buffer-size=4 -O2 -g -static-libgcc -fno-omit-frame-pointer -fno-strict-aliasing -Wno-uninitialized -D_FORTIFY_SOURCE=2 -DDBUG_OFF -Wall -Wextra -Wformat-security -Wno-format-truncation -Wno-init-self -Wno-nonnull-compare -Wno-unused-parameter -Woverloaded-virtual -Wnon-virtual-dtor -Wvla -Wwrite-strings -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -fvisibility=hidden -std=gnu++11 -o CMakeFiles/perfschema_embedded.dir/pfs_con_slice.cc.o -c /<<PKGBUILDDIR>>/storage/perfschema/pfs_con_slice.cc
[ 67%] Building CXX object storage/perfschema/CMakeFiles/perfschema_embedded.dir/pfs_defaults.cc.o
cd /<<PKGBUILDDIR>>/builddir/storage/perfschema && /usr/bin/riscv64-linux-gnu-g++ -DDBUG_TRACE -DHAVE_CONFIG_H -DMYSQL_SERVER -D_FILE_OFFSET_BITS=64 -I/<<PKGBUILDDIR>>/wsrep-lib/include -I/<<PKGBUILDDIR>>/wsrep-lib/wsrep-API/v26 -I/<<PKGBUILDDIR>>/builddir/include -I/<<PKGBUILDDIR>> -I/<<PKGBUILDDIR>>/include -I/<<PKGBUILDDIR>>/sql -I/<<PKGBUILDDIR>>/builddir/sql -I/<<PKGBUILDDIR>>/builddir/extra/wolfssl -I/<<PKGBUILDDIR>>/extra/wolfssl/wolfssl -I/<<PKGBUILDDIR>>/extra/wolfssl/wolfssl/wolfssl -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -pie -fPIC -Wl,-z,relro,-z,now -fstack-protector --param=ssp-buffer-size=4 -O2 -g -static-libgcc -fno-omit-frame-pointer -fno-strict-aliasing -Wno-uninitialized -D_FORTIFY_SOURCE=2 -DDBUG_OFF -Wall -Wextra -Wformat-security -Wno-format-truncation -Wno-init-self -Wno-nonnull-compare -Wno-unused-parameter -Woverloaded-virtual -Wnon-virtual-dtor -Wvla -Wwrite-strings -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -fvisibility=hidden -std=gnu++11 -o CMakeFiles/perfschema_embedded.dir/pfs_defaults.cc.o -c /<<PKGBUILDDIR>>/storage/perfschema/pfs_defaults.cc
[ 67%] Building CXX object storage/rocksdb/CMakeFiles/rocksdb_aux_lib.dir/nosql_access.cc.o
cd /<<PKGBUILDDIR>>/builddir/storage/rocksdb && /usr/bin/riscv64-linux-gnu-g++ -DDBUG_TRACE -DHAVE_CONFIG_H -DHAVE_SCHED_GETCPU=1 -DHAVE_TIMER_DELETE -DLZ4 -DOS_LINUX -DROCKSDB_FALLOCATE_PRESENT -DROCKSDB_LIB_IO_POSIX -DROCKSDB_MALLOC_USABLE_SIZE -DROCKSDB_PLATFORM_POSIX -DROCKSDB_SCHED_GETCPU_PRESENT -DROCKSDB_SUPPORT_THREAD_LOCAL -DSNAPPY -DZLIB -DZSTD -D_FILE_OFFSET_BITS=64 -I/<<PKGBUILDDIR>>/wsrep-lib/include -I/<<PKGBUILDDIR>>/wsrep-lib/wsrep-API/v26 -I/<<PKGBUILDDIR>>/builddir/include -I/<<PKGBUILDDIR>>/include -I/<<PKGBUILDDIR>>/sql -I/<<PKGBUILDDIR>>/builddir/extra/wolfssl -I/<<PKGBUILDDIR>>/extra/wolfssl/wolfssl -I/<<PKGBUILDDIR>>/extra/wolfssl/wolfssl/wolfssl -I/<<PKGBUILDDIR>>/builddir/storage/rocksdb -I/<<PKGBUILDDIR>>/storage/rocksdb/rocksdb -I/<<PKGBUILDDIR>>/storage/rocksdb/rocksdb/include -I/<<PKGBUILDDIR>>/storage/rocksdb/rocksdb/util -isystem /<<PKGBUILDDIR>>/storage/rocksdb/rocksdb/third-party/gtest-1.7.0/fused-src -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -pie -fPIC -Wl,-z,relro,-z,now -fstack-protector --param=ssp-buffer-size=4 -O2 -g -static-libgcc -fno-omit-frame-pointer -fno-strict-aliasing -Wno-uninitialized -D_FORTIFY_SOURCE=2 -DDBUG_OFF -Wall -Wextra -Wformat-security -Wno-format-truncation -Wno-init-self -Wno-nonnull-compare -Wno-unused-parameter -Woverloaded-virtual -Wnon-virtual-dtor -Wvla -Wwrite-strings -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -std=gnu++11 -o CMakeFiles/rocksdb_aux_lib.dir/nosql_access.cc.o -c /<<PKGBUILDDIR>>/storage/rocksdb/nosql_access.cc
[ 67%] Building CXX object storage/perfschema/CMakeFiles/perfschema_embedded.dir/pfs_digest.cc.o
cd /<<PKGBUILDDIR>>/builddir/storage/perfschema && /usr/bin/riscv64-linux-gnu-g++ -DDBUG_TRACE -DHAVE_CONFIG_H -DMYSQL_SERVER -D_FILE_OFFSET_BITS=64 -I/<<PKGBUILDDIR>>/wsrep-lib/include -I/<<PKGBUILDDIR>>/wsrep-lib/wsrep-API/v26 -I/<<PKGBUILDDIR>>/builddir/include -I/<<PKGBUILDDIR>> -I/<<PKGBUILDDIR>>/include -I/<<PKGBUILDDIR>>/sql -I/<<PKGBUILDDIR>>/builddir/sql -I/<<PKGBUILDDIR>>/builddir/extra/wolfssl -I/<<PKGBUILDDIR>>/extra/wolfssl/wolfssl -I/<<PKGBUILDDIR>>/extra/wolfssl/wolfssl/wolfssl -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -pie -fPIC -Wl,-z,relro,-z,now -fstack-protector --param=ssp-buffer-size=4 -O2 -g -static-libgcc -fno-omit-frame-pointer -fno-strict-aliasing -Wno-uninitialized -D_FORTIFY_SOURCE=2 -DDBUG_OFF -Wall -Wextra -Wformat-security -Wno-format-truncation -Wno-init-self -Wno-nonnull-compare -Wno-unused-parameter -Woverloaded-virtual -Wnon-virtual-dtor -Wvla -Wwrite-strings -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -fvisibility=hidden -std=gnu++11 -o CMakeFiles/perfschema_embedded.dir/pfs_digest.cc.o -c /<<PKGBUILDDIR>>/storage/perfschema/pfs_digest.cc
[ 67%] Building CXX object storage/innobase/CMakeFiles/innobase_embedded.dir/que/que0que.cc.o
cd /<<PKGBUILDDIR>>/builddir/storage/innobase && /usr/bin/riscv64-linux-gnu-g++ -DBTR_CUR_ADAPT -DBTR_CUR_HASH_ADAPT -DCOMPILER_HINTS -DDBUG_TRACE -DEMBEDDED_LIBRARY -DHAVE_C99_INITIALIZERS -DHAVE_CONFIG_H -DHAVE_FALLOC_PUNCH_HOLE_AND_KEEP_SIZE=1 -DHAVE_IB_LINUX_FUTEX=1 -DHAVE_LZ4=1 -DHAVE_LZ4_COMPRESS_DEFAULT=1 -DHAVE_NANOSLEEP=1 -DHAVE_SCHED_GETCPU=1 -DHAVE_SNAPPY=1 -DLINUX_NATIVE_AIO=1 -DMUTEX_EVENT -DWITH_INNODB_DISALLOW_WRITES -D_FILE_OFFSET_BITS=64 -I/<<PKGBUILDDIR>>/wsrep-lib/include -I/<<PKGBUILDDIR>>/wsrep-lib/wsrep-API/v26 -I/<<PKGBUILDDIR>>/builddir/include -I/<<PKGBUILDDIR>>/storage/innobase/include -I/<<PKGBUILDDIR>>/storage/innobase/handler -I/<<PKGBUILDDIR>>/libbinlogevents/include -I/<<PKGBUILDDIR>>/include -I/<<PKGBUILDDIR>>/sql -I/<<PKGBUILDDIR>>/builddir/extra/wolfssl -I/<<PKGBUILDDIR>>/extra/wolfssl/wolfssl -I/<<PKGBUILDDIR>>/extra/wolfssl/wolfssl/wolfssl -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -pie -fPIC -Wl,-z,relro,-z,now -fstack-protector --param=ssp-buffer-size=4 -O2 -g -static-libgcc -fno-omit-frame-pointer -fno-strict-aliasing -Wno-uninitialized -D_FORTIFY_SOURCE=2 -DDBUG_OFF -Wall -Wextra -Wformat-security -Wno-format-truncation -Wno-init-self -Wno-nonnull-compare -Wno-unused-parameter -Woverloaded-virtual -Wnon-virtual-dtor -Wvla -Wwrite-strings -Wdate-time -D_FORTIFY_SOURCE=2 -DUNIV_LINUX -D_GNU_SOURCE=1 -DHAVE_OPENSSL -DHAVE_WOLFSSL -DWOLFSSL_USER_SETTINGS -fPIC -fvisibility=hidden -std=gnu++11 -o CMakeFiles/innobase_embedded.dir/que/que0que.cc.o -c /<<PKGBUILDDIR>>/storage/innobase/que/que0que.cc
/usr/bin/ld: librocksdblib.a(memtable.cc.o): in function `rocksdb::SpinMutex::lock()':
./builddir/storage/rocksdb/./storage/rocksdb/rocksdb/util/mutexlock.h:117: undefined reference to `__atomic_compare_exchange_1'
/usr/bin/ld: librocksdblib.a(memtable.cc.o): in function `std::__atomic_base<bool>::compare_exchange_weak(bool&, bool, std::memory_order, std::memory_order)':
/usr/include/c++/9/bits/atomic_base.h:457: undefined reference to `__atomic_compare_exchange_1'
/usr/bin/ld: /usr/include/c++/9/bits/atomic_base.h:457: undefined reference to `__atomic_compare_exchange_1'
/usr/bin/ld: /usr/include/c++/9/bits/atomic_base.h:457: undefined reference to `__atomic_compare_exchange_1'
/usr/bin/ld: /usr/include/c++/9/bits/atomic_base.h:457: undefined reference to `__atomic_compare_exchange_1'
/usr/bin/ld: librocksdblib.a(memtable.cc.o):/usr/include/c++/9/bits/atomic_base.h:457: more undefined references to `__atomic_compare_exchange_1' follow
collect2: error: ld returned 1 exit status
make
[4]: ***
[storage/rocksdb/CMakeFiles/sst_dump.dir/build.make:89: storage/rocksdb/sst_dump] Error 1
make
[4]: Leaving directory '/<<PKGBUILDDIR>>/builddir'
make
[3]: ***
[CMakeFiles/Makefile2:8242: storage/rocksdb/CMakeFiles/sst_dump.dir/all] Error 2
make
[3]: *** Waiting for unfinished jobs....{preformatted}
Arch riscv64 is only an unofficial platform in Debian, but it has become an official platform for Ubuntu, so it matters now I guess.
https://launchpad.net/ubuntu/+source/mariadb-10.3
Related, Debian and Ubuntu also has RocksDB tools package. It has explicitly marked incompatibility with riscv64 and does not build for it:
https://buildd.debian.org/status/package.php?p=rocksdb
https://launchpad.net/ubuntu/+source/rocksdb
This could potentially be solved by just not building for riscv64 at all? It would be a pity though, since everything else does build.
MariaDB 10.4 Riscv64 build status in Debian:
https://buildd.debian.org/status/package.php?p=mariadb-10.4&suite=experimental
Failure in log:
{preformatted}[ 67%] Linking CXX executable sst_dump
cd /<<PKGBUILDDIR>>/builddir/storage/rocksdb && /usr/bin/cmake -E cmake_link_script CMakeFiles/sst_dump.dir/link.txt --verbose=1
/usr/bin/riscv64-linux-gnu-g++ -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -pie -fPIC -Wl,-z,relro,-z,now -fstack-protector --param=ssp-buffer-size=4 -O2 -g -static-libgcc -fno-omit-frame-pointer -fno-strict-aliasing -Wno-uninitialized -D_FORTIFY_SOURCE=2 -DDBUG_OFF -Wall -Wextra -Wformat-security -Wno-format-truncation -Wno-init-self -Wno-nonnull-compare -Wno-unused-parameter -Woverloaded-virtual -Wnon-virtual-dtor -Wvla -Wwrite-strings -Wl,-z,relro -Wl,-z,now CMakeFiles/sst_dump.dir/rocksdb/tools/sst_dump.cc.o -o sst_dump -lpthread librocksdblib.a -llz4 -lsnappy -lzstd -lz -lpthread -ldl
[ 67%] Building CXX object storage/rocksdb/CMakeFiles/rocksdb_aux_lib.dir/rdb_perf_context.cc.o
cd /<<PKGBUILDDIR>>/builddir/storage/rocksdb && /usr/bin/riscv64-linux-gnu-g++ -DDBUG_TRACE -DHAVE_CONFIG_H -DHAVE_SCHED_GETCPU=1 -DHAVE_TIMER_DELETE -DLZ4 -DOS_LINUX -DROCKSDB_FALLOCATE_PRESENT -DROCKSDB_LIB_IO_POSIX -DROCKSDB_MALLOC_USABLE_SIZE -DROCKSDB_PLATFORM_POSIX -DROCKSDB_SCHED_GETCPU_PRESENT -DROCKSDB_SUPPORT_THREAD_LOCAL -DSNAPPY -DZLIB -DZSTD -D_FILE_OFFSET_BITS=64 -I/<<PKGBUILDDIR>>/wsrep-lib/include -I/<<PKGBUILDDIR>>/wsrep-lib/wsrep-API/v26 -I/<<PKGBUILDDIR>>/builddir/include -I/<<PKGBUILDDIR>>/include -I/<<PKGBUILDDIR>>/sql -I/<<PKGBUILDDIR>>/builddir/extra/wolfssl -I/<<PKGBUILDDIR>>/extra/wolfssl/wolfssl -I/<<PKGBUILDDIR>>/extra/wolfssl/wolfssl/wolfssl -I/<<PKGBUILDDIR>>/builddir/storage/rocksdb -I/<<PKGBUILDDIR>>/storage/rocksdb/rocksdb -I/<<PKGBUILDDIR>>/storage/rocksdb/rocksdb/include -I/<<PKGBUILDDIR>>/storage/rocksdb/rocksdb/util -isystem /<<PKGBUILDDIR>>/storage/rocksdb/rocksdb/third-party/gtest-1.7.0/fused-src -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -pie -fPIC -Wl,-z,relro,-z,now -fstack-protector --param=ssp-buffer-size=4 -O2 -g -static-libgcc -fno-omit-frame-pointer -fno-strict-aliasing -Wno-uninitialized -D_FORTIFY_SOURCE=2 -DDBUG_OFF -Wall -Wextra -Wformat-security -Wno-format-truncation -Wno-init-self -Wno-nonnull-compare -Wno-unused-parameter -Woverloaded-virtual -Wnon-virtual-dtor -Wvla -Wwrite-strings -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -std=gnu++11 -o CMakeFiles/rocksdb_aux_lib.dir/rdb_perf_context.cc.o -c /<<PKGBUILDDIR>>/storage/rocksdb/rdb_perf_context.cc
[ 67%] Building CXX object storage/innobase/CMakeFiles/innobase_embedded.dir/pars/pars0sym.cc.o
cd /<<PKGBUILDDIR>>/builddir/storage/innobase && /usr/bin/riscv64-linux-gnu-g++ -DBTR_CUR_ADAPT -DBTR_CUR_HASH_ADAPT -DCOMPILER_HINTS -DDBUG_TRACE -DEMBEDDED_LIBRARY -DHAVE_C99_INITIALIZERS -DHAVE_CONFIG_H -DHAVE_FALLOC_PUNCH_HOLE_AND_KEEP_SIZE=1 -DHAVE_IB_LINUX_FUTEX=1 -DHAVE_LZ4=1 -DHAVE_LZ4_COMPRESS_DEFAULT=1 -DHAVE_NANOSLEEP=1 -DHAVE_SCHED_GETCPU=1 -DHAVE_SNAPPY=1 -DLINUX_NATIVE_AIO=1 -DMUTEX_EVENT -DWITH_INNODB_DISALLOW_WRITES -D_FILE_OFFSET_BITS=64 -I/<<PKGBUILDDIR>>/wsrep-lib/include -I/<<PKGBUILDDIR>>/wsrep-lib/wsrep-API/v26 -I/<<PKGBUILDDIR>>/builddir/include -I/<<PKGBUILDDIR>>/storage/innobase/include -I/<<PKGBUILDDIR>>/storage/innobase/handler -I/<<PKGBUILDDIR>>/libbinlogevents/include -I/<<PKGBUILDDIR>>/include -I/<<PKGBUILDDIR>>/sql -I/<<PKGBUILDDIR>>/builddir/extra/wolfssl -I/<<PKGBUILDDIR>>/extra/wolfssl/wolfssl -I/<<PKGBUILDDIR>>/extra/wolfssl/wolfssl/wolfssl -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -pie -fPIC -Wl,-z,relro,-z,now -fstack-protector --param=ssp-buffer-size=4 -O2 -g -static-libgcc -fno-omit-frame-pointer -fno-strict-aliasing -Wno-uninitialized -D_FORTIFY_SOURCE=2 -DDBUG_OFF -Wall -Wextra -Wformat-security -Wno-format-truncation -Wno-init-self -Wno-nonnull-compare -Wno-unused-parameter -Woverloaded-virtual -Wnon-virtual-dtor -Wvla -Wwrite-strings -Wdate-time -D_FORTIFY_SOURCE=2 -DUNIV_LINUX -D_GNU_SOURCE=1 -DHAVE_OPENSSL -DHAVE_WOLFSSL -DWOLFSSL_USER_SETTINGS -fPIC -fvisibility=hidden -std=gnu++11 -o CMakeFiles/innobase_embedded.dir/pars/pars0sym.cc.o -c /<<PKGBUILDDIR>>/storage/innobase/pars/pars0sym.cc
[ 67%] Building CXX object storage/perfschema/CMakeFiles/perfschema_embedded.dir/pfs_column_values.cc.o
cd /<<PKGBUILDDIR>>/builddir/storage/perfschema && /usr/bin/riscv64-linux-gnu-g++ -DDBUG_TRACE -DHAVE_CONFIG_H -DMYSQL_SERVER -D_FILE_OFFSET_BITS=64 -I/<<PKGBUILDDIR>>/wsrep-lib/include -I/<<PKGBUILDDIR>>/wsrep-lib/wsrep-API/v26 -I/<<PKGBUILDDIR>>/builddir/include -I/<<PKGBUILDDIR>> -I/<<PKGBUILDDIR>>/include -I/<<PKGBUILDDIR>>/sql -I/<<PKGBUILDDIR>>/builddir/sql -I/<<PKGBUILDDIR>>/builddir/extra/wolfssl -I/<<PKGBUILDDIR>>/extra/wolfssl/wolfssl -I/<<PKGBUILDDIR>>/extra/wolfssl/wolfssl/wolfssl -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -pie -fPIC -Wl,-z,relro,-z,now -fstack-protector --param=ssp-buffer-size=4 -O2 -g -static-libgcc -fno-omit-frame-pointer -fno-strict-aliasing -Wno-uninitialized -D_FORTIFY_SOURCE=2 -DDBUG_OFF -Wall -Wextra -Wformat-security -Wno-format-truncation -Wno-init-self -Wno-nonnull-compare -Wno-unused-parameter -Woverloaded-virtual -Wnon-virtual-dtor -Wvla -Wwrite-strings -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -fvisibility=hidden -std=gnu++11 -o CMakeFiles/perfschema_embedded.dir/pfs_column_values.cc.o -c /<<PKGBUILDDIR>>/storage/perfschema/pfs_column_values.cc
[ 67%] Building CXX object storage/perfschema/CMakeFiles/perfschema_embedded.dir/pfs_con_slice.cc.o
cd /<<PKGBUILDDIR>>/builddir/storage/perfschema && /usr/bin/riscv64-linux-gnu-g++ -DDBUG_TRACE -DHAVE_CONFIG_H -DMYSQL_SERVER -D_FILE_OFFSET_BITS=64 -I/<<PKGBUILDDIR>>/wsrep-lib/include -I/<<PKGBUILDDIR>>/wsrep-lib/wsrep-API/v26 -I/<<PKGBUILDDIR>>/builddir/include -I/<<PKGBUILDDIR>> -I/<<PKGBUILDDIR>>/include -I/<<PKGBUILDDIR>>/sql -I/<<PKGBUILDDIR>>/builddir/sql -I/<<PKGBUILDDIR>>/builddir/extra/wolfssl -I/<<PKGBUILDDIR>>/extra/wolfssl/wolfssl -I/<<PKGBUILDDIR>>/extra/wolfssl/wolfssl/wolfssl -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -pie -fPIC -Wl,-z,relro,-z,now -fstack-protector --param=ssp-buffer-size=4 -O2 -g -static-libgcc -fno-omit-frame-pointer -fno-strict-aliasing -Wno-uninitialized -D_FORTIFY_SOURCE=2 -DDBUG_OFF -Wall -Wextra -Wformat-security -Wno-format-truncation -Wno-init-self -Wno-nonnull-compare -Wno-unused-parameter -Woverloaded-virtual -Wnon-virtual-dtor -Wvla -Wwrite-strings -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -fvisibility=hidden -std=gnu++11 -o CMakeFiles/perfschema_embedded.dir/pfs_con_slice.cc.o -c /<<PKGBUILDDIR>>/storage/perfschema/pfs_con_slice.cc
[ 67%] Building CXX object storage/perfschema/CMakeFiles/perfschema_embedded.dir/pfs_defaults.cc.o
cd /<<PKGBUILDDIR>>/builddir/storage/perfschema && /usr/bin/riscv64-linux-gnu-g++ -DDBUG_TRACE -DHAVE_CONFIG_H -DMYSQL_SERVER -D_FILE_OFFSET_BITS=64 -I/<<PKGBUILDDIR>>/wsrep-lib/include -I/<<PKGBUILDDIR>>/wsrep-lib/wsrep-API/v26 -I/<<PKGBUILDDIR>>/builddir/include -I/<<PKGBUILDDIR>> -I/<<PKGBUILDDIR>>/include -I/<<PKGBUILDDIR>>/sql -I/<<PKGBUILDDIR>>/builddir/sql -I/<<PKGBUILDDIR>>/builddir/extra/wolfssl -I/<<PKGBUILDDIR>>/extra/wolfssl/wolfssl -I/<<PKGBUILDDIR>>/extra/wolfssl/wolfssl/wolfssl -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -pie -fPIC -Wl,-z,relro,-z,now -fstack-protector --param=ssp-buffer-size=4 -O2 -g -static-libgcc -fno-omit-frame-pointer -fno-strict-aliasing -Wno-uninitialized -D_FORTIFY_SOURCE=2 -DDBUG_OFF -Wall -Wextra -Wformat-security -Wno-format-truncation -Wno-init-self -Wno-nonnull-compare -Wno-unused-parameter -Woverloaded-virtual -Wnon-virtual-dtor -Wvla -Wwrite-strings -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -fvisibility=hidden -std=gnu++11 -o CMakeFiles/perfschema_embedded.dir/pfs_defaults.cc.o -c /<<PKGBUILDDIR>>/storage/perfschema/pfs_defaults.cc
[ 67%] Building CXX object storage/rocksdb/CMakeFiles/rocksdb_aux_lib.dir/nosql_access.cc.o
cd /<<PKGBUILDDIR>>/builddir/storage/rocksdb && /usr/bin/riscv64-linux-gnu-g++ -DDBUG_TRACE -DHAVE_CONFIG_H -DHAVE_SCHED_GETCPU=1 -DHAVE_TIMER_DELETE -DLZ4 -DOS_LINUX -DROCKSDB_FALLOCATE_PRESENT -DROCKSDB_LIB_IO_POSIX -DROCKSDB_MALLOC_USABLE_SIZE -DROCKSDB_PLATFORM_POSIX -DROCKSDB_SCHED_GETCPU_PRESENT -DROCKSDB_SUPPORT_THREAD_LOCAL -DSNAPPY -DZLIB -DZSTD -D_FILE_OFFSET_BITS=64 -I/<<PKGBUILDDIR>>/wsrep-lib/include -I/<<PKGBUILDDIR>>/wsrep-lib/wsrep-API/v26 -I/<<PKGBUILDDIR>>/builddir/include -I/<<PKGBUILDDIR>>/include -I/<<PKGBUILDDIR>>/sql -I/<<PKGBUILDDIR>>/builddir/extra/wolfssl -I/<<PKGBUILDDIR>>/extra/wolfssl/wolfssl -I/<<PKGBUILDDIR>>/extra/wolfssl/wolfssl/wolfssl -I/<<PKGBUILDDIR>>/builddir/storage/rocksdb -I/<<PKGBUILDDIR>>/storage/rocksdb/rocksdb -I/<<PKGBUILDDIR>>/storage/rocksdb/rocksdb/include -I/<<PKGBUILDDIR>>/storage/rocksdb/rocksdb/util -isystem /<<PKGBUILDDIR>>/storage/rocksdb/rocksdb/third-party/gtest-1.7.0/fused-src -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -pie -fPIC -Wl,-z,relro,-z,now -fstack-protector --param=ssp-buffer-size=4 -O2 -g -static-libgcc -fno-omit-frame-pointer -fno-strict-aliasing -Wno-uninitialized -D_FORTIFY_SOURCE=2 -DDBUG_OFF -Wall -Wextra -Wformat-security -Wno-format-truncation -Wno-init-self -Wno-nonnull-compare -Wno-unused-parameter -Woverloaded-virtual -Wnon-virtual-dtor -Wvla -Wwrite-strings -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -std=gnu++11 -o CMakeFiles/rocksdb_aux_lib.dir/nosql_access.cc.o -c /<<PKGBUILDDIR>>/storage/rocksdb/nosql_access.cc
[ 67%] Building CXX object storage/perfschema/CMakeFiles/perfschema_embedded.dir/pfs_digest.cc.o
cd /<<PKGBUILDDIR>>/builddir/storage/perfschema && /usr/bin/riscv64-linux-gnu-g++ -DDBUG_TRACE -DHAVE_CONFIG_H -DMYSQL_SERVER -D_FILE_OFFSET_BITS=64 -I/<<PKGBUILDDIR>>/wsrep-lib/include -I/<<PKGBUILDDIR>>/wsrep-lib/wsrep-API/v26 -I/<<PKGBUILDDIR>>/builddir/include -I/<<PKGBUILDDIR>> -I/<<PKGBUILDDIR>>/include -I/<<PKGBUILDDIR>>/sql -I/<<PKGBUILDDIR>>/builddir/sql -I/<<PKGBUILDDIR>>/builddir/extra/wolfssl -I/<<PKGBUILDDIR>>/extra/wolfssl/wolfssl -I/<<PKGBUILDDIR>>/extra/wolfssl/wolfssl/wolfssl -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -pie -fPIC -Wl,-z,relro,-z,now -fstack-protector --param=ssp-buffer-size=4 -O2 -g -static-libgcc -fno-omit-frame-pointer -fno-strict-aliasing -Wno-uninitialized -D_FORTIFY_SOURCE=2 -DDBUG_OFF -Wall -Wextra -Wformat-security -Wno-format-truncation -Wno-init-self -Wno-nonnull-compare -Wno-unused-parameter -Woverloaded-virtual -Wnon-virtual-dtor -Wvla -Wwrite-strings -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -fvisibility=hidden -std=gnu++11 -o CMakeFiles/perfschema_embedded.dir/pfs_digest.cc.o -c /<<PKGBUILDDIR>>/storage/perfschema/pfs_digest.cc
[ 67%] Building CXX object storage/innobase/CMakeFiles/innobase_embedded.dir/que/que0que.cc.o
cd /<<PKGBUILDDIR>>/builddir/storage/innobase && /usr/bin/riscv64-linux-gnu-g++ -DBTR_CUR_ADAPT -DBTR_CUR_HASH_ADAPT -DCOMPILER_HINTS -DDBUG_TRACE -DEMBEDDED_LIBRARY -DHAVE_C99_INITIALIZERS -DHAVE_CONFIG_H -DHAVE_FALLOC_PUNCH_HOLE_AND_KEEP_SIZE=1 -DHAVE_IB_LINUX_FUTEX=1 -DHAVE_LZ4=1 -DHAVE_LZ4_COMPRESS_DEFAULT=1 -DHAVE_NANOSLEEP=1 -DHAVE_SCHED_GETCPU=1 -DHAVE_SNAPPY=1 -DLINUX_NATIVE_AIO=1 -DMUTEX_EVENT -DWITH_INNODB_DISALLOW_WRITES -D_FILE_OFFSET_BITS=64 -I/<<PKGBUILDDIR>>/wsrep-lib/include -I/<<PKGBUILDDIR>>/wsrep-lib/wsrep-API/v26 -I/<<PKGBUILDDIR>>/builddir/include -I/<<PKGBUILDDIR>>/storage/innobase/include -I/<<PKGBUILDDIR>>/storage/innobase/handler -I/<<PKGBUILDDIR>>/libbinlogevents/include -I/<<PKGBUILDDIR>>/include -I/<<PKGBUILDDIR>>/sql -I/<<PKGBUILDDIR>>/builddir/extra/wolfssl -I/<<PKGBUILDDIR>>/extra/wolfssl/wolfssl -I/<<PKGBUILDDIR>>/extra/wolfssl/wolfssl/wolfssl -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -pie -fPIC -Wl,-z,relro,-z,now -fstack-protector --param=ssp-buffer-size=4 -O2 -g -static-libgcc -fno-omit-frame-pointer -fno-strict-aliasing -Wno-uninitialized -D_FORTIFY_SOURCE=2 -DDBUG_OFF -Wall -Wextra -Wformat-security -Wno-format-truncation -Wno-init-self -Wno-nonnull-compare -Wno-unused-parameter -Woverloaded-virtual -Wnon-virtual-dtor -Wvla -Wwrite-strings -Wdate-time -D_FORTIFY_SOURCE=2 -DUNIV_LINUX -D_GNU_SOURCE=1 -DHAVE_OPENSSL -DHAVE_WOLFSSL -DWOLFSSL_USER_SETTINGS -fPIC -fvisibility=hidden -std=gnu++11 -o CMakeFiles/innobase_embedded.dir/que/que0que.cc.o -c /<<PKGBUILDDIR>>/storage/innobase/que/que0que.cc
/usr/bin/ld: librocksdblib.a(memtable.cc.o): in function `rocksdb::SpinMutex::lock()':
./builddir/storage/rocksdb/./storage/rocksdb/rocksdb/util/mutexlock.h:117: undefined reference to `__atomic_compare_exchange_1'
/usr/bin/ld: librocksdblib.a(memtable.cc.o): in function `std::__atomic_base<bool>::compare_exchange_weak(bool&, bool, std::memory_order, std::memory_order)':
/usr/include/c++/9/bits/atomic_base.h:457: undefined reference to `__atomic_compare_exchange_1'
/usr/bin/ld: /usr/include/c++/9/bits/atomic_base.h:457: undefined reference to `__atomic_compare_exchange_1'
/usr/bin/ld: /usr/include/c++/9/bits/atomic_base.h:457: undefined reference to `__atomic_compare_exchange_1'
/usr/bin/ld: /usr/include/c++/9/bits/atomic_base.h:457: undefined reference to `__atomic_compare_exchange_1'
/usr/bin/ld: librocksdblib.a(memtable.cc.o):/usr/include/c++/9/bits/atomic_base.h:457: more undefined references to `__atomic_compare_exchange_1' follow
collect2: error: ld returned 1 exit status
make[4]: *** [storage/rocksdb/CMakeFiles/sst_dump.dir/build.make:89: storage/rocksdb/sst_dump] Error 1
make[4]: Leaving directory '/<<PKGBUILDDIR>>/builddir'
make[3]: *** [CMakeFiles/Makefile2:8242: storage/rocksdb/CMakeFiles/sst_dump.dir/all] Error 2
make[3]: *** Waiting for unfinished jobs....{preformatted}
Arch riscv64 is only an unofficial platform in Debian, but it has become an official platform for Ubuntu, so it matters now I guess.
https://launchpad.net/ubuntu/+source/mariadb-10.3
Related, Debian and Ubuntu also has RocksDB tools package. It has explicitly marked incompatibility with riscv64 and does not build for it:
https://buildd.debian.org/status/package.php?p=rocksdb
https://launchpad.net/ubuntu/+source/rocksdb
This could potentially be solved by just not building for riscv64 at all? It would be a pity though, since everything else does build.