chia-plotter icon indicating copy to clipboard operation
chia-plotter copied to clipboard

Modifications necessary to compile with clang/llvm on Linux

Open gpshead opened this issue 4 years ago • 0 comments

To compile with clang on Linux a few small changes are necessary.

  1. Add the following to the make_devel.sh or similar build script before cmake for compilers like clang to work on Linux:
export LDFLAGS="-lstdc++ -lm"

To build with clang instead of gcc, people should set these before running the make script:

export CC=clang
export CXX=clang
export LD=ld.lld

That is sufficient for it to compile with clang 10 such as Ubuntu 20.04 has available as a package.

  1. For a recent version of clang (I used clang 13), the lib/libbech32 submodule needs a tweak to fix it's copy of googletest for https://github.com/dcdpr/libbech32/issues/9 by removing -Werror from the lib/libbech32/test/googletest/googletest/cmake/internal_utils.cmake file.

(Clang 10 and 13 produces a reliably 3% faster binary than Ubuntu 20.04's gcc 9.3 on my zen3.)

gpshead avatar Dec 27 '21 06:12 gpshead