microsoft / Nova

Nova: High-speed recursive arguments from folding schemes
MIT License
673 stars 176 forks source link

error: could not compile `nova-snark` (lib test) due to previous error #279

Closed liqi16 closed 6 months ago

liqi16 commented 7 months ago

When I tried this command: cargo test --release, I met this error. How can I solve it?

error: linking with `cc` failed: exit status: 1
  |
  = note: LC_ALL="C" PATH="/home/lq/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/bin:/home/lq/.vscode-server/bin/1a5daa3a0231a0fbba4f14db7ec463cf99d7768e/bin/remote-cli:/home/lq/anaconda3/envs/torch/bin:/home/lq/anaconda3/condabin:/home/lq/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/home/lq/anaconda3/bin:/home/lq/.vscode-server/bin/1a5daa3a0231a0fbba4f14db7ec463cf99d7768e/bin/remote-cli:/home/lq/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin" VSLANG="1033" "cc" "-m64" "/tmp/rustcgDx255/symbols.o" "/home/lq/project/Nova/target/release/deps/nova_snark-0a97af52b066276c.nova_snark.b23c3e9fd8311171-cgu.00.rcgu.o" "/home/lq/project/Nova/target/release/deps/nova_snark-0a97af52b066276c.nova_snark.b23c3e9fd8311171-cgu.01.rcgu.o" "/home/lq/project/Nova/target/release/deps/nova_snark-0a97af52b066276c.nova_snark.b23c3e9fd8311171-cgu.02.rcgu.o" "/home/lq/project/Nova/target/release/deps/nova_snark-0a97af52b066276c.nova_snark.b23c3e9fd8311171-cgu.03.rcgu.o" "/home/lq/project/Nova/target/release/deps/nova_snark-0a97af52b066276c.nova_snark.b23c3e9fd8311171-cgu.04.rcgu.o" "/home/lq/project/Nova/target/release/deps/nova_snark-0a97af52b066276c.nova_snark.b23c3e9fd8311171-cgu.05.rcgu.o" "/home/lq/project/Nova/target/release/deps/nova_snark-0a97af52b066276c.nova_snark.b23c3e9fd8311171-cgu.06.rcgu.o" "/home/lq/project/Nova/target/release/deps/nova_snark-0a97af52b066276c.nova_snark.b23c3e9fd8311171-cgu.07.rcgu.o" "/home/lq/project/Nova/target/release/deps/nova_snark-0a97af52b066276c.nova_snark.b23c3e9fd8311171-cgu.08.rcgu.o" "/home/lq/project/Nova/target/release/deps/nova_snark-0a97af52b066276c.nova_snark.b23c3e9fd8311171-cgu.09.rcgu.o" "/home/lq/project/Nova/target/release/deps/nova_snark-0a97af52b066276c.nova_snark.b23c3e9fd8311171-cgu.10.rcgu.o" "/home/lq/project/Nova/target/release/deps/nova_snark-0a97af52b066276c.nova_snark.b23c3e9fd8311171-cgu.11.rcgu.o" "/home/lq/project/Nova/target/release/deps/nova_snark-0a97af52b066276c.nova_snark.b23c3e9fd8311171-cgu.12.rcgu.o" "/home/lq/project/Nova/target/release/deps/nova_snark-0a97af52b066276c.nova_snark.b23c3e9fd8311171-cgu.13.rcgu.o" "/home/lq/project/Nova/target/release/deps/nova_snark-0a97af52b066276c.nova_snark.b23c3e9fd8311171-cgu.14.rcgu.o" "/home/lq/project/Nova/target/release/deps/nova_snark-0a97af52b066276c.nova_snark.b23c3e9fd8311171-cgu.15.rcgu.o" "/home/lq/project/Nova/target/release/deps/nova_snark-0a97af52b066276c.27738q150i0litpz.rcgu.o" "-Wl,--as-needed" "-L" "/home/lq/project/Nova/target/release/deps" "-L" "/home/lq/project/Nova/target/release/build/pasta-msm-5889b0d5905c3345/out" "-L" "/home/lq/project/Nova/target/release/build/pasta-msm-5889b0d5905c3345/out" "-L" "/home/lq/project/Nova/target/release/build/pasta-msm-5889b0d5905c3345/out" "-L" "/home/lq/project/Nova/target/release/build/semolina-742fe02cb979602c/out" "-L" "/home/lq/project/Nova/target/release/build/sppark-2309c16a02d6afbc/out" "-L" "/home/lq/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-Wl,-Bstatic" "/home/lq/project/Nova/target/release/deps/libpasta_msm-7fcf8e95f38040ea.rlib" "/home/lq/project/Nova/target/release/deps/libsppark-69bd22a88f96a875.rlib" "/home/lq/project/Nova/target/release/deps/libsemolina-8fefc018f6f918c9.rlib" "/home/lq/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libtest-1c1e90653c657ff2.rlib" "/home/lq/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libgetopts-e8683e75aaaef901.rlib" "/home/lq/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libunicode_width-b71c2483f91f7b1d.rlib" "/home/lq/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_std-0501fbcc95f3e2d1.rlib" "/home/lq/project/Nova/target/release/deps/libneptune-9f77a831dc55cfdf.rlib" "/home/lq/project/Nova/target/release/deps/libhalo2curves-eb2f9eb874c3fef3.rlib" "/home/lq/project/Nova/target/release/deps/libserde_arrays-4cb1b7cb62cd8a98.rlib" "/home/lq/project/Nova/target/release/deps/libpairing-38cd24ff632722b1.rlib" "/home/lq/project/Nova/target/release/deps/libnum_bigint-ca3b75e6279386d1.rlib" "/home/lq/project/Nova/target/release/deps/libnum_integer-02dabb58ac9a8f9d.rlib" "/home/lq/project/Nova/target/release/deps/libnum_traits-f56b94a3e4e42668.rlib" "/home/lq/project/Nova/target/release/deps/libpasta_curves-22d4b99f1cba5bed.rlib" "/home/lq/project/Nova/target/release/deps/libhex-92eb3f38aa65df99.rlib" "/home/lq/project/Nova/target/release/deps/libblake2b_simd-769f6188e1774bd4.rlib" "/home/lq/project/Nova/target/release/deps/libstatic_assertions-eab2eb1c9c5479e2.rlib" "/home/lq/project/Nova/target/release/deps/libgroup-f52deb0b523f840e.rlib" "/home/lq/project/Nova/target/release/deps/libproptest-e9e14c71c39dfea7.rlib" "/home/lq/project/Nova/target/release/deps/libunarray-930df28a80245de6.rlib" "/home/lq/project/Nova/target/release/deps/libregex_syntax-ca2fc63a08bab674.rlib" "/home/lq/project/Nova/target/release/deps/librand_xorshift-a0231543f33c0ade.rlib" "/home/lq/project/Nova/target/release/deps/librusty_fork-f84ea28503e8349f.rlib" "/home/lq/project/Nova/target/release/deps/libwait_timeout-03147b3b2b354db2.rlib" "/home/lq/project/Nova/target/release/deps/libtempfile-ca22a25e64ad14c8.rlib" "/home/lq/project/Nova/target/release/deps/libfastrand-f6661ca0d6f249f5.rlib" "/home/lq/project/Nova/target/release/deps/librustix-912deacfa059db75.rlib" "/home/lq/project/Nova/target/release/deps/liblinux_raw_sys-1ff8d5e0dbfc894e.rlib" "/home/lq/project/Nova/target/release/deps/libfnv-bcb4d596ed096a87.rlib" "/home/lq/project/Nova/target/release/deps/libquick_error-4fc32a8408c2d16b.rlib" "/home/lq/project/Nova/target/release/deps/liblazy_static-0985704e5d19b294.rlib" "/home/lq/project/Nova/target/release/deps/libspin-5794b69290b3a4d7.rlib" "/home/lq/project/Nova/target/release/deps/libbit_set-473a87f64092db5f.rlib" "/home/lq/project/Nova/target/release/deps/libbit_vec-2f14fa5fd3e62d6a.rlib" "/home/lq/project/Nova/target/release/deps/libbitflags-68fc6e412662e218.rlib" "/home/lq/project/Nova/target/release/deps/librayon-b7e849bd61a4c808.rlib" "/home/lq/project/Nova/target/release/deps/librayon_core-27a5c271e81020de.rlib" "/home/lq/project/Nova/target/release/deps/libcrossbeam_deque-cd8463d2b2eb8a73.rlib" "/home/lq/project/Nova/target/release/deps/libcrossbeam_epoch-d91e271b0088a611.rlib" "/home/lq/project/Nova/target/release/deps/libmemoffset-5f7b838a078e3d38.rlib" "/home/lq/project/Nova/target/release/deps/libscopeguard-96448b6b16196307.rlib" "/home/lq/project/Nova/target/release/deps/libcrossbeam_utils-4410ffc4125e3119.rlib" "/home/lq/project/Nova/target/release/deps/libeither-b86b04317cb0dd22.rlib" "/home/lq/project/Nova/target/release/deps/librand-f31ae72b5ad979fd.rlib" "/home/lq/project/Nova/target/release/deps/librand_chacha-c068f3349281af46.rlib" "/home/lq/project/Nova/target/release/deps/libppv_lite86-08381a55bf8c473c.rlib" "/home/lq/project/Nova/target/release/deps/libonce_cell-d1afd78e8c78f842.rlib" "/home/lq/project/Nova/target/release/deps/libsha3-de734461d667ee11.rlib" "/home/lq/project/Nova/target/release/deps/libkeccak-05889a19997fa8eb.rlib" "/home/lq/project/Nova/target/release/deps/libdigest-d91f9cb0b9b67ce3.rlib" "/home/lq/project/Nova/target/release/deps/libblock_buffer-1247fb3e55eeb882.rlib" "/home/lq/project/Nova/target/release/deps/libcrypto_common-c79e76e394085203.rlib" "/home/lq/project/Nova/target/release/deps/libgeneric_array-47e3a94764cdb11d.rlib" "/home/lq/project/Nova/target/release/deps/libtypenum-ef8ef4f80e5cf562.rlib" "/home/lq/project/Nova/target/release/deps/libbincode-fbf879090449b81c.rlib" "/home/lq/project/Nova/target/release/deps/libbellpepper-589db2b950baf7dd.rlib" "/home/lq/project/Nova/target/release/deps/libbellpepper_core-0b58774cc9298b3d.rlib" "/home/lq/project/Nova/target/release/deps/libthiserror-763af02620695299.rlib" "/home/lq/project/Nova/target/release/deps/libblake2s_simd-137ef07b2ff0a11c.rlib" "/home/lq/project/Nova/target/release/deps/libconstant_time_eq-fd7b208ecd3f9063.rlib" "/home/lq/project/Nova/target/release/deps/libarrayvec-a2f44900e8cb9332.rlib" "/home/lq/project/Nova/target/release/deps/libarrayref-8a61eb916e5818b0.rlib" "/home/lq/project/Nova/target/release/deps/libserde-f837ad590d79821a.rlib" "/home/lq/project/Nova/target/release/deps/libff-c674d524e1292192.rlib" "/home/lq/project/Nova/target/release/deps/libbyteorder-d4dc81402f587e5e.rlib" "/home/lq/project/Nova/target/release/deps/librand_core-7abc281b267db03b.rlib" "/home/lq/project/Nova/target/release/deps/libgetrandom-c55aeeb6b06312f3.rlib" "/home/lq/project/Nova/target/release/deps/liblibc-477d49ee0a9e3f70.rlib" "/home/lq/project/Nova/target/release/deps/libcfg_if-17709ab0e2f45da0.rlib" "/home/lq/project/Nova/target/release/deps/libbitvec-d623938ca4bca493.rlib" "/home/lq/project/Nova/target/release/deps/libwyz-74412a8aa5534b87.rlib" "/home/lq/project/Nova/target/release/deps/libtap-d63c521426b4b08e.rlib" "/home/lq/project/Nova/target/release/deps/libradium-f3f9c2f450bec65d.rlib" "/home/lq/project/Nova/target/release/deps/libfunty-fa8684eb7221f148.rlib" "/home/lq/project/Nova/target/release/deps/libsubtle-1a8b60b7805013ad.rlib" "/home/lq/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libstd-6498d8891e016dca.rlib" "/home/lq/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libpanic_unwind-3debdee1a9058d84.rlib" "/home/lq/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libobject-8339c5bd5cbc92bf.rlib" "/home/lq/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libmemchr-160ebcebb54c11ba.rlib" "/home/lq/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libaddr2line-95c75789f1b65e37.rlib" "/home/lq/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libgimli-7e8094f2d6258832.rlib" "/home/lq/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_demangle-bac9783ef1b45db0.rlib" "/home/lq/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libstd_detect-a1cd87df2f2d8e76.rlib" "/home/lq/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libhashbrown-7fd06d468d7dba16.rlib" "/home/lq/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_alloc-5ac19487656e05bf.rlib" "/home/lq/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libminiz_oxide-c7c35d32cf825c11.rlib" "/home/lq/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libadler-c523f1571362e70b.rlib" "/home/lq/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libunwind-85f17c92b770a911.rlib" "/home/lq/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcfg_if-598d3ba148dadcea.rlib" "/home/lq/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/liblibc-a58ec2dab545caa4.rlib" "/home/lq/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/liballoc-f9dda8cca149f0fc.rlib" "/home/lq/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_core-7ba4c315dd7a3503.rlib" "/home/lq/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcore-5ac2993e19124966.rlib" "/home/lq/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcompiler_builtins-df2fb7f50dec519a.rlib" "-Wl,-Bdynamic" "-lstdc++" "-lcudart_static" "-lstdc++" "-lcudart_static" "-lgcc_s" "-lutil" "-lrt" "-lpthread" "-lm" "-ldl" "-lc" "-Wl,--eh-frame-hdr" "-Wl,-z,noexecstack" "-L" "/home/lq/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-o" "/home/lq/project/Nova/target/release/deps/nova_snark-0a97af52b066276c" "-Wl,--gc-sections" "-pie" "-Wl,-z,relro,-z,now" "-Wl,-O1" "-nodefaultlibs"
  = note: /usr/bin/ld: /home/lq/project/Nova/target/release/deps/libpasta_msm-7fcf8e95f38040ea.rlib(pallas.o): in function `msm_t<xyzz_t<pasta_t<&Pallas_P, 11037532056220336127ull, &Pallas_RR, &Pallas_one>, pasta_t<&Pallas_P, 11037532056220336127ull, &Pallas_RR, &Pallas_one> >, jacobian_t<pasta_t<&Pallas_P, 11037532056220336127ull, &Pallas_RR, &Pallas_one> >, xyzz_t<pasta_t<&Pallas_P, 11037532056220336127ull, &Pallas_RR, &Pallas_one>, pasta_t<&Pallas_P, 11037532056220336127ull, &Pallas_RR, &Pallas_one> >::affine_t, pasta_t<&Vesta_P, 10108024940646105087ull, &Vesta_RR, &Vesta_one>, xyzz_t<pasta_t<&Pallas_P, 11037532056220336127ull, &Pallas_RR, &Pallas_one>, pasta_t<&Pallas_P, 11037532056220336127ull, &Pallas_RR, &Pallas_one> >::affine_t::mem_t, xyzz_t<pasta_t<&Pallas_P, 11037532056220336127ull, &Pallas_RR, &Pallas_one>, pasta_t<&Pallas_P, 11037532056220336127ull, &Pallas_RR, &Pallas_one> >::mem_t>::invoke(jacobian_t<pasta_t<&Pallas_P, 11037532056220336127ull, &Pallas_RR, &Pallas_one> >&, xyzz_t<pasta_t<&Pallas_P, 11037532056220336127ull, &Pallas_RR, &Pallas_one>, pasta_t<&Pallas_P, 11037532056220336127ull, &Pallas_RR, &Pallas_one> >::affine_t const*, unsigned long, pasta_t<&Vesta_P, 10108024940646105087ull, &Vesta_RR, &Vesta_one> const*, bool, unsigned long) [clone .constprop.0]':
          tmpxft_0002ca00_00000000-6_pallas.cudafe1.cpp:(.text._ZN5msm_tI6xyzz_tI7pasta_tIXadL_ZL8Pallas_PEELy11037532056220336127EXadL_ZL9Pallas_RREEXadL_ZL10Pallas_oneEEES2_E10jacobian_tIS2_ENS3_8affine_tES1_IXadL_ZL7Vesta_PEELy10108024940646105087EXadL_ZL8Vesta_RREEXadL_ZL9Vesta_oneEEENS6_5mem_tENS3_5mem_tEE6invokeERS5_PKS6_mPKS7_bm.constprop.0+0xf67): undefined reference to `cudaMallocAsync'
          /usr/bin/ld: /home/lq/project/Nova/target/release/deps/libpasta_msm-7fcf8e95f38040ea.rlib(pallas.o): in function `cuda_pippenger_pallas.cold':
          tmpxft_0002ca00_00000000-6_pallas.cudafe1.cpp:(.text.unlikely.cuda_pippenger_pallas+0x446): undefined reference to `cudaFreeAsync'
          /usr/bin/ld: /home/lq/project/Nova/target/release/deps/libpasta_msm-7fcf8e95f38040ea.rlib(pallas.o): in function `cuda_pippenger_pallas':
          tmpxft_0002ca00_00000000-6_pallas.cudafe1.cpp:(.text.cuda_pippenger_pallas+0x109): undefined reference to `cudaMallocAsync'
          /usr/bin/ld: tmpxft_0002ca00_00000000-6_pallas.cudafe1.cpp:(.text.cuda_pippenger_pallas+0x1db): undefined reference to `cudaFreeAsync'
          /usr/bin/ld: /home/lq/project/Nova/target/release/deps/libpasta_msm-7fcf8e95f38040ea.rlib(vesta.o): in function `msm_t<xyzz_t<pasta_t<&Vesta_P, 10108024940646105087ull, &Vesta_RR, &Vesta_one>, pasta_t<&Vesta_P, 10108024940646105087ull, &Vesta_RR, &Vesta_one> >, jacobian_t<pasta_t<&Vesta_P, 10108024940646105087ull, &Vesta_RR, &Vesta_one> >, xyzz_t<pasta_t<&Vesta_P, 10108024940646105087ull, &Vesta_RR, &Vesta_one>, pasta_t<&Vesta_P, 10108024940646105087ull, &Vesta_RR, &Vesta_one> >::affine_t, pasta_t<&Pallas_P, 11037532056220336127ull, &Pallas_RR, &Pallas_one>, xyzz_t<pasta_t<&Vesta_P, 10108024940646105087ull, &Vesta_RR, &Vesta_one>, pasta_t<&Vesta_P, 10108024940646105087ull, &Vesta_RR, &Vesta_one> >::affine_t::mem_t, xyzz_t<pasta_t<&Vesta_P, 10108024940646105087ull, &Vesta_RR, &Vesta_one>, pasta_t<&Vesta_P, 10108024940646105087ull, &Vesta_RR, &Vesta_one> >::mem_t>::invoke(jacobian_t<pasta_t<&Vesta_P, 10108024940646105087ull, &Vesta_RR, &Vesta_one> >&, xyzz_t<pasta_t<&Vesta_P, 10108024940646105087ull, &Vesta_RR, &Vesta_one>, pasta_t<&Vesta_P, 10108024940646105087ull, &Vesta_RR, &Vesta_one> >::affine_t const*, unsigned long, pasta_t<&Pallas_P, 11037532056220336127ull, &Pallas_RR, &Pallas_one> const*, bool, unsigned long) [clone .constprop.0]':
          tmpxft_0002cc17_00000000-6_vesta.cudafe1.cpp:(.text._ZN5msm_tI6xyzz_tI7pasta_tIXadL_ZL7Vesta_PEELy10108024940646105087EXadL_ZL8Vesta_RREEXadL_ZL9Vesta_oneEEES2_E10jacobian_tIS2_ENS3_8affine_tES1_IXadL_ZL8Pallas_PEELy11037532056220336127EXadL_ZL9Pallas_RREEXadL_ZL10Pallas_oneEEENS6_5mem_tENS3_5mem_tEE6invokeERS5_PKS6_mPKS7_bm.constprop.0+0xf67): undefined reference to `cudaMallocAsync'
          /usr/bin/ld: /home/lq/project/Nova/target/release/deps/libpasta_msm-7fcf8e95f38040ea.rlib(vesta.o): in function `cuda_pippenger_vesta.cold':
          tmpxft_0002cc17_00000000-6_vesta.cudafe1.cpp:(.text.unlikely.cuda_pippenger_vesta+0x446): undefined reference to `cudaFreeAsync'
          /usr/bin/ld: /home/lq/project/Nova/target/release/deps/libpasta_msm-7fcf8e95f38040ea.rlib(vesta.o): in function `cuda_pippenger_vesta':
          tmpxft_0002cc17_00000000-6_vesta.cudafe1.cpp:(.text.cuda_pippenger_vesta+0x109): undefined reference to `cudaMallocAsync'
          /usr/bin/ld: tmpxft_0002cc17_00000000-6_vesta.cudafe1.cpp:(.text.cuda_pippenger_vesta+0x1db): undefined reference to `cudaFreeAsync'
          collect2: error: ld returned 1 exit status

  = note: some `extern` functions couldn't be found; some native libraries may need to be installed or have their path specified
  = note: use the `-l` flag to specify native libraries to link
  = note: use the `cargo:rustc-link-lib` directive to specify the native libraries to link with Cargo (see https://doc.rust-lang.org/cargo/reference/build-scripts.html#cargorustc-link-libkindname)

error: could not compile `nova-snark` (lib test) due to previous error
srinathsetty commented 6 months ago

Hi! Could you specify what command was run?

It appears to be coming from pasta-msm dependency. Do you have nvcc and other tools to be able to build pasta-msm?

Perhaps, worth compiling it in portable feature? cargo build --features "portable" Another thing to try might be to clone pasta-msm and try to build it?

liqi16 commented 6 months ago

Thank you for your kind response! @srinathsetty

I run the cargo test --release command. When it processed the nova-snark(test), it reported this error.

Building [=======================> ] 265/266: nova-snark(test)

I have nvcc, but I met another error when I tried to build pasta-msm. (Sorry, I am a beginner in ZK and Rust) Also, when I tried to use the cargo build --features "portable" command, I met the same error. Does that mean my CUDA version is too low? How can I solve this problem when I don't have permission to upgrade CUDA? I am looking forward to hearing back from you. Thank you very much.

$ nvcc --version
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2019 NVIDIA Corporation
Built on Sun_Jul_28_19:07:16_PDT_2019
Cuda compilation tools, release 10.1, V10.1.243
error: failed to run custom build command for `sppark v0.1.5`

Caused by:
  process didn't exit successfully: `/home/lq/project/Nova/target/debug/build/sppark-90441368c7869e69/build-script-build` (exit status: 101)
  --- stdout
  cargo:ROOT=/home/lq/.cargo/registry/src/index.crates.io-6f17d22bba15001f/sppark-0.1.5/sppark

  --- stderr
  thread 'main' panicked at /home/lq/.cargo/registry/src/index.crates.io-6f17d22bba15001f/sppark-0.1.5/build.rs:67:13:
  Unsupported CUDA version 10.1 < 11.4
  note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
warning: build failed, waiting for other jobs to finish...
srinathsetty commented 6 months ago

Hi @liqi16. I've been unable to reproduce this issue as I don't have a machine with a GPU that matches what you are using. I think this is coming from the pasta-msm crate in your environment. I think the easiest would be to check the following.

I suspect this will fail in your environment. If it fails, could you please open an issue in their repository? If it succeeds, please reopen this issue here.