Files
concrete/compiler
youben11 01757fa6d5 fix: forward errors instead of creating new ones
LLVM errors should be handled/consumed. Creating a new one and leaving
the previous one alive will crash the compiler. Whenever we don't want a
crash (e.g. logging the error is enough), but still wanna continue the
execution, we can just consume it.
2021-10-12 11:50:15 +01:00
..
2021-06-04 09:18:14 +02:00
2021-05-28 12:08:41 +02:00
2021-10-07 14:38:50 +01:00

Building the compiler

Install MLIR following https://mlir.llvm.org/getting_started/ Use commit c2415d67a564

Install pybind11:

pip install pybind11

Build concrete library:

git clone https://github.com/zama-ai/concrete
cd concrete
git checkout feature/core_c_api
cd concrete-ffi
RUSTFLAGS="-C target-cpu=native" cargo build --release 

Generate the compiler build system, in the build directory

export LLVM_PROJECT="PATH_TO_LLVM_PROJECT"
export CONCRETE_PROJECT="PATH_TO_CONCRETE_PROJECT"
make build

Build the compiler

make zamacompiler

Test the compiler

#TODO: let cmake set this PATH
export LD_LIBRARY_PATH="path_to_homomorphizer/compiler/build/lib/Runtime/"
make test

Run the compiler

./build/src/zamacompiler