When i cairo-run cairo program(use cairo_secp func verify_eth_signature ), i got Error: Builtins {'keccak'} are not present in layout "all"(layer=small So is it), WHY?
i want to run cairo program with func verify_eth_signature
When i cairo-run cairo program(use cairo_secp func verify_eth_signature ), i got Error: Builtins {'keccak'} are not present in layout "all"(layer=small So is it), WHY?
i want to run cairo program with func verify_eth_signature
Cairo is a CPU architecture to run arbitrary code. For some specific functions, it makes sense to use "built ins", which are function specific circuits that allow running this function faster.
In your case, you are using in cairo_secp func verify_eth_signature which in turn use the keccak built in.
Combining various AIRs and Cairo gives you a layout. The default one you are using does not include the keccak built in. To specify a layout that does, you should had the flag
--layout=small
You can see the documentation for layouts here https://www.cairo-lang.org/docs/how_cairo_works/builtins.html#layouts