Description
It looks like the extension field methods at least for Goldilocks are missing from the icicle build, at least the cc is not able to find them:
= note: some arguments are omitted. use `--verbose` to show all linker arguments
= note: ld: warning: ignoring duplicate libraries: '-licicle_hash'
Undefined symbols for architecture arm64:
"_goldilocks_extension_sumcheck_create", referenced from:
_$LT$icicle_goldilocks..sumcheck..goldilocks_extension..SumcheckWrapper$u20$as$u20$icicle_core..sumcheck..Sumcheck$GT$::new::h429b55e43b6f8f2b in libicicle_goldilocks-03b1882d9cd9ca5c.rlib[7](icicle_goldilocks-03b1882d9cd9ca5c.icicle_goldilocks.62bb35ec4c4f13f8-cgu.4.rcgu.o)
"_goldilocks_extension_sumcheck_delete", referenced from:
_$LT$icicle_goldilocks..sumcheck..goldilocks_extension..SumcheckWrapper$u20$as$u20$core..ops..drop..Drop$GT$::drop::hf1450783695cc8d1 in libicicle_goldilocks-03b1882d9cd9ca5c.rlib[7](icicle_goldilocks-03b1882d9cd9ca5c.icicle_goldilocks.62bb35ec4c4f13f8-cgu.4.rcgu.o)
"_goldilocks_extension_sumcheck_get_proof", referenced from:
_$LT$icicle_goldilocks..sumcheck..goldilocks_extension..SumcheckWrapper$u20$as$u20$icicle_core..sumcheck..Sumcheck$GT$::prove::hdd7c440f54138f9d in sumcheck_multi_proving-f663b174f6a67246.1rp5eolcthd8hn2147l94fase.rcgu.o
"_goldilocks_extension_sumcheck_proof_delete", referenced from:
_$LT$icicle_goldilocks..sumcheck..goldilocks_extension..SumcheckProof$u20$as$u20$core..ops..drop..Drop$GT$::drop::hd7a900b600fdc379 in libicicle_goldilocks-03b1882d9cd9ca5c.rlib[7](icicle_goldilocks-03b1882d9cd9ca5c.icicle_goldilocks.62bb35ec4c4f13f8-cgu.4.rcgu.o)
"_goldilocks_extension_sumcheck_proof_get_poly_sizes", referenced from:
_$LT$icicle_goldilocks..sumcheck..goldilocks_extension..SumcheckProof$u20$as$u20$icicle_core..sumcheck..SumcheckProofOps$LT$icicle_goldilocks..field..ExtensionField$GT$$GT$::get_round_polys::hf14035f55028d176 in libicicle_goldilocks-03b1882d9cd9ca5c.rlib[7](icicle_goldilocks-03b1882d9cd9ca5c.icicle_goldilocks.62bb35ec4c4f13f8-cgu.4.rcgu.o)
"_goldilocks_extension_sumcheck_proof_get_round_poly_at", referenced from:
_$LT$icicle_goldilocks..sumcheck..goldilocks_extension..SumcheckProof$u20$as$u20$icicle_core..sumcheck..SumcheckProofOps$LT$icicle_goldilocks..field..ExtensionField$GT$$GT$::get_round_polys::hf14035f55028d176 in libicicle_goldilocks-03b1882d9cd9ca5c.rlib[7](icicle_goldilocks-03b1882d9cd9ca5c.icicle_goldilocks.62bb35ec4c4f13f8-cgu.4.rcgu.o)
"_goldilocks_extension_sumcheck_verify", referenced from:
_$LT$icicle_goldilocks..sumcheck..goldilocks_extension..SumcheckWrapper$u20$as$u20$icicle_core..sumcheck..Sumcheck$GT$::verify::h7c1eb08116139d3f in libicicle_goldilocks-03b1882d9cd9ca5c.rlib[7](icicle_goldilocks-03b1882d9cd9ca5c.icicle_goldilocks.62bb35ec4c4f13f8-cgu.4.rcgu.o)
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
I assume that if the methods for extension fields are defined in cpp library in this manner:
rg fri_merkle_tree_verify ./icicle/
./icicle/src/fri/fri_c_api.cpp
278:eIcicleError CONCAT_EXPAND(ICICLE_FFI_PREFIX, fri_merkle_tree_verify)(
530:eIcicleError CONCAT_EXPAND(ICICLE_FFI_PREFIX, extension_fri_merkle_tree_verify)(
then the same is missing for extension fields
rg sumcheck_verify ./icicle/
./icicle/src/sumcheck/sumcheck_c_api.cpp
125:eIcicleError CONCAT_EXPAND(ICICLE_FFI_PREFIX, sumcheck_verify)(
Description
It looks like the extension field methods at least for Goldilocks are missing from the icicle build, at least the
ccis not able to find them:I assume that if the methods for extension fields are defined in cpp library in this manner:
then the same is missing for extension fields