4 LIBS=-lm libmatrix.so libexponentialsum.so libextend.so libmeasurepauli.so libinnerproduct.so
6 weaksim_relerr: weaksim_relerr.c matrix exponentialsum shrink shrinkstar extend measurepauli innerproduct randomstabilizerstate supplement sparsify
7 $(CC) -o $@ weaksim_relerr.c $(CFLAGS) $(LIBS) libshrink.so libshrinkstar.so librandomstabilizerstate.so libsparsify.so
9 weaksim: weaksim.c matrix exponentialsum shrink extend measurepauli innerproduct sparsify
10 $(CC) -o $@ weaksim.c $(CFLAGS) $(LIBS) libshrink.so libsparsify.so
12 module_sparsify_test: module_sparsify_test matrix sparsify
13 $(CC) -o $@ module_sparsify_test.c $(CFLAGS) libmatrix.so libsparsify.so
15 matrix: matrix.h matrix.c
16 $(CC) -c -Werror -Wall -fpic matrix.c
17 $(CC) -shared -o libmatrix.so matrix.o
19 exponentialsum: exponentialsum.h exponentialsum.c
20 $(CC) -c -Wall -fpic exponentialsum.c
21 $(CC) -shared -o libexponentialsum.so exponentialsum.o -lm libmatrix.so
23 shrink: shrink.h shrink.c
24 $(CC) -c -Wall -fpic shrink.c
25 $(CC) -shared -o libshrink.so shrink.o -lm libmatrix.so
27 extend: extend.h extend.c
28 $(CC) -c -Werror -Wall -fpic extend.c
29 $(CC) -shared -o libextend.so extend.o -lm libmatrix.so
31 measurepauli: measurepauli.h measurepauli.c
32 $(CC) -c -Wall -fpic measurepauli.c
33 $(CC) -shared -o libmeasurepauli.so measurepauli.o -lm libextend.so libshrink.so libmatrix.so
35 innerproduct: innerproduct.h innerproduct.c
36 $(CC) -c -Wall -fpic innerproduct.c
37 $(CC) -shared -o libinnerproduct.so innerproduct.o -lm libextend.so libshrink.so libexponentialsum.so libmatrix.so
39 innerproductintersection: innerproductintersection.h innerproductintersection.c
40 $(CC) -c -Wall -fpic innerproductintersection.c
41 $(CC) -shared -o libinnerproductintersection.so innerproductintersection.o -lm libextend.so libshrink.so libexponentialsum.so libmatrix.so
43 shrinkstar: shrinkstar.h shrinkstar.c
44 $(CC) -c -Wall -fpic shrinkstar.c
45 $(CC) -shared -o libshrinkstar.so shrinkstar.o -lm libmatrix.so
47 randomstabilizerstate: randomstabilizerstate.h randomstabilizerstate.c
48 $(CC) -c -Wall -fpic randomstabilizerstate.c
49 $(CC) -shared -o librandomstabilizerstate.so randomstabilizerstate.o -lm libmatrix.so libshrinkstar.so -llapacke
51 supplement: supplement.h supplement.c
52 $(CC) -c -Wall -fpic supplement.c
53 $(CC) -shared -o libsupplement.so supplement.o -lm
55 sparsify: sparsify.h sparsify.c supplement
56 $(CC) -c -Wall -fpic sparsify.c
57 $(CC) -shared -o libsparsify.so sparsify.o -lm libmatrix.so libsupplement.so
59 randominputcommutingHermitianPauli: randominputcommutingHermitianPauli.c
60 $(CC) -o randominputcommutingHermitianPauli randominputcommutingHermitianPauli.c
62 randominputcommutingHermitianPauli2: randominputcommutingHermitianPauli2.c
63 $(CC) -o randominputcommutingHermitianPauli2 randominputcommutingHermitianPauli2.c
65 randominputPauli: randominputPauli.c
66 $(CC) -o randominputPauli randominputPauli.c
68 multipauli: multipauli.c
69 $(CC) -o multipauli multipauli.c -lm
74 rm ./weaksim_relerr ./weaksim ./matrix.o ./libmatrix.so ./exponentialsum.o ./libexponentialsum.so ./shrink.o ./libshrink.so ./extend.o ./libextend.so ./measurepauli.o ./libmeasurepauli.so ./libinnerproduct.so
76 # you might want to update LD_LIBRARY_PATH to see the library:
77 # export LD_LIBRARY_PATH=$PWD:$LD_LIBRARY_PATH
78 # or if you have root privileges put the library /usr/local/lib or whatever library directory in your path
79 # Then, use ldconfig to write the path in the config file:
80 # sudo echo "/usr/local/lib" >> /etc/ld.so.conf