Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

RocksDB build fails on riscv64 #7051

Closed
fauust opened this issue Jun 30, 2020 · 4 comments
Closed

RocksDB build fails on riscv64 #7051

fauust opened this issue Jun 30, 2020 · 4 comments
Assignees
Labels
RiscV64 Build or run RocksDB on Risc

Comments

@fauust
Copy link
Contributor

fauust commented Jun 30, 2020

Expected behavior

Build is OK

Actual behavior

Build fail with:

/usr/bin/ld: librocksdblib.a(memtable.cc.o): in function `.L0 ':
./builddir/storage/rocksdb/./storage/rocksdb/rocksdb/util/dynamic_bloom.h:177:
undefined reference to `__atomic_fetch_or_1'
/usr/bin/ld: librocksdblib.a(memtable.cc.o): in function `.LVL1731':
./builddir/storage/rocksdb/./storage/rocksdb/rocksdb/util/dynamic_bloom.h:179:
undefined reference to `__atomic_fetch_or_1'
/usr/bin/ld: librocksdblib.a(memtable.cc.o): in function `SaveValue':
./builddir/storage/rocksdb/./storage/rocksdb/rocksdb/db/memtable.cc:596:
undefined reference to `__atomic_compare_exchange_1'
/usr/bin/ld: librocksdblib.a(memtable.cc.o): in function `.L0 ':
/usr/include/c++/8/bits/atomic_base.h:434: undefined reference to
`__atomic_compare_exchange_1'
/usr/bin/ld: /usr/include/c++/8/bits/atomic_base.h:434: undefined
reference to `__atomic_compare_exchange_1'
/usr/bin/ld: /usr/include/c++/8/bits/atomic_base.h:434: undefined
reference to `__atomic_compare_exchange_1'
/usr/bin/ld: /usr/include/c++/8/bits/atomic_base.h:434: undefined
reference to `__atomic_compare_exchange_1'
/usr/bin/ld: librocksdblib.a(memtable.cc.o):/usr/include/c++/8/bits/atomic_base.h:434:
more undefined references to `__atomic_compare_exchange_1' follow
collect2: error: ld returned 1 exit status

See full log at: https://buildd.debian.org/status/fetch.php?pkg=mariadb-10.3&arch=riscv64&ver=1%3A10.3.16-1&stamp=1561225015&raw=0

Steps to reproduce the behavior

Build RocksDB on riscv64 arch.

https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=933151
https://jira.mariadb.org/browse/MDEV-23051

@adamretter
Copy link
Collaborator

@fauust AFAIK you are the first person to report about building on RiscV64. Congrats :-)

Do you know if there is any hardware available for Open Source projects, so that we can test this? We have kindly been given access to ppc64le, aarch64, and s390x by various groups, but we don't have a RISCv64 machine yet

@grooverdan
Copy link
Contributor

successfully built per #7060. Runtime still unknown. For CI https://toolchains.bootlin.com/releases_riscv64.html downloads are painfully slow. If you can have them staticly installed that's probably ok.

@ottok
Copy link
Contributor

ottok commented Jul 6, 2020

Note that riscv64 is one of the official platforms of Ubuntu nowadays, so it is not only a marginal thing. See https://launchpad.net/ubuntu/+source/mariadb-10.3

image

@adamretter
Copy link
Collaborator

I believe that this is now fixed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
RiscV64 Build or run RocksDB on Risc
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants