nanocurrency / nano-node

Nano is digital currency. Its ticker is: XNO and its currency symbol is: Ӿ
https://nano.org
BSD 3-Clause "New" or "Revised" License
3.48k stars 786 forks source link

Update RocksDB to support building on M1 Mac when a new stable release supports it #3105

Open wezrule opened 3 years ago

wezrule commented 3 years ago

There is a RocksDB build issue on the new M1 ARM chip machines https://github.com/facebook/rocksdb/pull/7714. The fix is in master but not in any of the stable releases, at the time of writing the latest is RocksDB 6.15.5 (5th Feb). There are 3 commits which should be added on to any new version we use (if still appropriate), an example is shown here: https://github.com/nanocurrency/rocksdb/commits/6.15.4

edgartheunready commented 2 years ago

Hey @wezrule, any luck getting this to work? I forked nano-node, updated the RocksDB submodule to the latest version, and tried compiling, but ran into a second issue.

./boost_1_70_0/stage/lib/libboost_log.a, building for macOS-arm64 but attempting to link with file built for macOS-x86_64

If I knew more about building C++ projects, I might be of more assistance. But I can say that I tried using an updated version of rocksdb, and that did fix the build issue, but I still haven't successfully built nano-node for m1 yet. Thanks!

dsiganos commented 2 years ago

@jamescoxon, if I remember well, you got this to work, didn't you?

jamescoxon commented 2 years ago

Yeah - https://github.com/jamescoxon/nano-node/commit/3bc70963eeee917ddf4e048005242170034d5ef2