iden3 / rapidsnark

rapidsnark is a fast zkSNARK prover written in C++, that generates proofs for circuits created with circom and snarkjs.
GNU Lesser General Public License v3.0
51 stars 21 forks source link

buildProverServer can't find fq.o and fr.o #13

Open a00012025 opened 7 months ago

a00012025 commented 7 months ago

Hi, I tried to follow the script in README to compile the prover in server mode.

npm install
git submodule init
git submodule update
npx task buildPistache
npx task buildProverServer

However I encountered following error when running npx task buildProverServer:

g++ -I. -I../src -I../depends/pistache/include -I../depends/json/single_include -I../depends/ffiasm/c ../src/main_proofserver.cpp ../src/proverapi.cpp ../src/fullprover.cpp ../src/binfile_utils.cpp ../src/wtns_utils.cpp ../src/zkey_utils.cpp ../src/logger.cpp ../depends/ffiasm/c/misc.cpp ../depends/ffiasm/c/naf.cpp ../depends/ffiasm/c/splitparstr.cpp ../depends/ffiasm/c/alt_bn128.cpp fq.cpp fq.o fr.cpp fr.o -L../depends/pistache/build/src -lpistache -o proverServer -fmax-errors=5 -pthread -std=c++17 -fopenmp -lgmp -lsodium -g -DSANITY_CHECK
g++: error: fq.o: No such file or directory
g++: error: fr.o: No such file or directory
Command failed: g++ -I. -I../src -I../depends/pistache/include -I../depends/json/single_include -I../depends/ffiasm/c ../src/main_proofserver.cpp ../src/proverapi.cpp ../src/fullprover.cpp ../src/binfile_utils.cpp ../src/wtns_utils.cpp ../src/zkey_utils.cpp ../src/logger.cpp ../depends/ffiasm/c/misc.cpp ../depends/ffiasm/c/naf.cpp ../depends/ffiasm/c/splitparstr.cpp ../depends/ffiasm/c/alt_bn128.cpp fq.cpp fq.o fr.cpp fr.o -L../depends/pistache/build/src -lpistache -o proverServer -fmax-errors=5 -pthread -std=c++17 -fopenmp -lgmp -lsodium -g -DSANITY_CHECK

My environment is Ubuntu 20.04. Is it because fq.o and fr.o weren't built successfully? Any suggestion would help, thanks.

OBrezhniev commented 6 months ago

Hi @a00012025!

We've switched build system from nodejs tasks to cmake, and added builds for arm64, iOS & Android, and as static&shared libs, but haven't ported buildProverServer to cmake.

This task is in our todo list, but priority is low (you are the first one to ask about it). But contributions are welcome!

jzteam commented 1 month ago

@OBrezhniev HI, When can we probably use this proverServer?