Failure to build Act executable
zoep opened this issue · comments
In the amm-test
branch, trying to build the Act executable with
> nix develop
> make
Fails with the error included below. Note that this is not happening in the main branch, and it only appeared after I updated to the latest hevm main (which might or might not be coincidental). Also, cabal repl
works fine.
Here's the output of running cabal v2-install --installdir=bin --overwrite-policy=always --verbose=3
: output.txt
**Undefined symbols for architecture x86_64:
"___cxa_free_exception", referenced from:
std::__1::__throw_length_error[abi:v160006](char const*) in libff.a(alt_bn128_g1.cpp.o)
libff::enter_block(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, bool) in libff.a(profiling.cpp.o)
libff::leave_block(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, bool) in libff.a(profiling.cpp.o)
"operator delete[](void*)", referenced from:
libff::init_alt_bn128_params() in libff.a(alt_bn128_init.cpp.o)
done0 in libff.a(alt_bn128_init.cpp.o)
done1 in libff.a(alt_bn128_init.cpp.o)
done2 in libff.a(alt_bn128_init.cpp.o)
done3 in libff.a(alt_bn128_init.cpp.o)
done4 in libff.a(alt_bn128_init.cpp.o)
done5 in libff.a(alt_bn128_init.cpp.o)
...
"operator delete(void*)", referenced from:
_ethjet_ecpairing in libHShevm-0.52.0-CCZJOZs40MI9tgkh5WHYEQ.a(ethjet-ff.o)
std::__1::vector<unsigned long, std::__1::allocator<unsigned long>>::~vector[abi:v160006]() in libff.a(alt_bn128_g1.cpp.o)
done81 in libff.a(alt_bn128_init.cpp.o)
done87 in libff.a(alt_bn128_init.cpp.o)
libff::alt_bn128_final_exponentiation_first_chunk(libff::Fp12_2over3over2_model<4l, libff::alt_bn128_modulus_q> const&) in libff.a(alt_bn128_pairing.cpp.o)
libff::alt_bn128_exp_by_neg_z(libff::Fp12_2over3over2_model<4l, libff::alt_bn128_modulus_q> const&) in libff.a(alt_bn128_pairing.cpp.o)
libff::alt_bn128_final_exponentiation_last_chunk(libff::Fp12_2over3over2_model<4l, libff::alt_bn128_modulus_q> const&) in libff.a(alt_bn128_pairing.cpp.o)
...
"___gxx_personality_v0", referenced from:
_ethjet_ecadd in libHShevm-0.52.0-CCZJOZs40MI9tgkh5WHYEQ.a(ethjet-ff.o)
_ethjet_ecmul in libHShevm-0.52.0-CCZJOZs40MI9tgkh5WHYEQ.a(ethjet-ff.o)
_ethjet_ecpairing in libHShevm-0.52.0-CCZJOZs40MI9tgkh5WHYEQ.a(ethjet-ff.o)
Dwarf Exception Unwind Info (__eh_frame) in libHShevm-0.52.0-CCZJOZs40MI9tgkh5WHYEQ.a(ethjet-ff.o)
std::__1::__throw_length_error[abi:v160006](char const*) in libff.a(alt_bn128_g1.cpp.o)
Dwarf Exception Unwind Info (__eh_frame) in libff.a(alt_bn128_g1.cpp.o)
libff::alt_bn128_final_exponentiation_first_chunk(libff::Fp12_2over3over2_model<4l, libff::alt_bn128_modulus_q> const&) in libff.a(alt_bn128_pairing.cpp.o)
...
"___cxa_allocate_exception", referenced from:
ethjet_ff::read_Fq_element(unsigned char*) in libHShevm-0.52.0-CCZJOZs40MI9tgkh5WHYEQ.a(ethjet-ff.o)
ethjet_ff::read_G1_point(unsigned char*) in libHShevm-0.52.0-CCZJOZs40MI9tgkh5WHYEQ.a(ethjet-ff.o)
ethjet_ff::read_G2_point(unsigned char*) in libHShevm-0.52.0-CCZJOZs40MI9tgkh5WHYEQ.a(ethjet-ff.o)
ethjet_ff::write_Fq_element(unsigned char*, libff::Fp_model<4l, libff::alt_bn128_modulus_q>) in libHShevm-0.52.0-CCZJOZs40MI9tgkh5WHYEQ.a(ethjet-ff.o)
std::__1::__throw_length_error[abi:v160006](char const*) in libff.a(alt_bn128_g1.cpp.o)
std::__throw_bad_array_new_length[abi:v160006]() in libff.a(alt_bn128_g1.cpp.o)
libff::enter_block(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, bool) in libff.a(profiling.cpp.o)
...
"___cxa_begin_catch", referenced from:
_ethjet_ecadd in libHShevm-0.52.0-CCZJOZs40MI9tgkh5WHYEQ.a(ethjet-ff.o)
_ethjet_ecmul in libHShevm-0.52.0-CCZJOZs40MI9tgkh5WHYEQ.a(ethjet-ff.o)
_ethjet_ecpairing in libHShevm-0.52.0-CCZJOZs40MI9tgkh5WHYEQ.a(ethjet-ff.o)
"___cxa_end_catch", referenced from:
_ethjet_ecadd in libHShevm-0.52.0-CCZJOZs40MI9tgkh5WHYEQ.a(ethjet-ff.o)
_ethjet_ecmul in libHShevm-0.52.0-CCZJOZs40MI9tgkh5WHYEQ.a(ethjet-ff.o)
_ethjet_ecpairing in libHShevm-0.52.0-CCZJOZs40MI9tgkh5WHYEQ.a(ethjet-ff.o)
"operator new(unsigned long)", referenced from:
done81 in libff.a(alt_bn128_init.cpp.o)
done87 in libff.a(alt_bn128_init.cpp.o)
libff::alt_bn128_final_exponentiation_first_chunk(libff::Fp12_2over3over2_model<4l, libff::alt_bn128_modulus_q> const&) in libff.a(alt_bn128_pairing.cpp.o)
libff::alt_bn128_exp_by_neg_z(libff::Fp12_2over3over2_model<4l, libff::alt_bn128_modulus_q> const&) in libff.a(alt_bn128_pairing.cpp.o)
libff::alt_bn128_final_exponentiation_last_chunk(libff::Fp12_2over3over2_model<4l, libff::alt_bn128_modulus_q> const&) in libff.a(alt_bn128_pairing.cpp.o)
libff::alt_bn128_final_exponentiation(libff::Fp12_2over3over2_model<4l, libff::alt_bn128_modulus_q> const&) in libff.a(alt_bn128_pairing.cpp.o)
libff::alt_bn128_ate_precompute_G1(libff::alt_bn128_G1 const&) in libff.a(alt_bn128_pairing.cpp.o)
...
"operator new[](unsigned long)", referenced from:
libff::init_alt_bn128_params() in libff.a(alt_bn128_init.cpp.o)
done0 in libff.a(alt_bn128_init.cpp.o)
done1 in libff.a(alt_bn128_init.cpp.o)
done2 in libff.a(alt_bn128_init.cpp.o)
done3 in libff.a(alt_bn128_init.cpp.o)
done4 in libff.a(alt_bn128_init.cpp.o)
done5 in libff.a(alt_bn128_init.cpp.o)
...
"___cxa_throw", referenced from:
ethjet_ff::read_Fq_element(unsigned char*) in libHShevm-0.52.0-CCZJOZs40MI9tgkh5WHYEQ.a(ethjet-ff.o)
ethjet_ff::read_G1_point(unsigned char*) in libHShevm-0.52.0-CCZJOZs40MI9tgkh5WHYEQ.a(ethjet-ff.o)
ethjet_ff::read_G2_point(unsigned char*) in libHShevm-0.52.0-CCZJOZs40MI9tgkh5WHYEQ.a(ethjet-ff.o)
ethjet_ff::write_Fq_element(unsigned char*, libff::Fp_model<4l, libff::alt_bn128_modulus_q>) in libHShevm-0.52.0-CCZJOZs40MI9tgkh5WHYEQ.a(ethjet-ff.o)
std::__1::__throw_length_error[abi:v160006](char const*) in libff.a(alt_bn128_g1.cpp.o)
std::__throw_bad_array_new_length[abi:v160006]() in libff.a(alt_bn128_g1.cpp.o)
libff::enter_block(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, bool) in libff.a(profiling.cpp.o)
...
ld: symbol(s) not found for architecture x86_64
clang-16: error: linker command failed with exit code 1 (use -v to see invocation)
ghc: `cc' failed in phase `Linker'. (Exit code: 1)
Error: cabal: Failed to build exe:act from act-0.1.0.0. See the build log
above for details.
make: *** [Makefile:14: bin/act] Error 1
Zoes-MacBook-Pro:act zoo$ rm bin/act
rm: cannot remove 'bin/act': No such file or directory
Zoes-MacBook-Pro:act zoo$ cabal repl
Warning: The package list for 'hackage.haskell.org' is 71 days old.
Run 'cabal update' to get the latest list of available packages.
Resolving dependencies...
Build profile: -w ghc-9.4.8 -O1
In order, the following will be built (use -v for more details):
- act-0.1.0.0 (lib) (first run)
Configuring library for act-0.1.0.0..
Preprocessing library for act-0.1.0.0..
unused terminals: 5
shift/reduce conflicts: 21
GHCi, version 9.4.8: https://www.haskell.org/ghc/ :? for help
[ 1 of 20] Compiling Act.Lex ( /Users/zoo/Repos/act/dist-newstyle/build/x86_64-osx/ghc-9.4.8/act-0.1.0.0/build/Act/Lex.hs, interpreted )
[ 2 of 20] Compiling Act.Syntax.Timing ( src/Act/Syntax/Timing.hs, interpreted )
[ 3 of 20] Compiling Act.Syntax.Untyped ( src/Act/Syntax/Untyped.hs, interpreted )
[ 4 of 20] Compiling Act.Syntax.Types ( src/Act/Syntax/Types.hs, interpreted )
[ 5 of 20] Compiling Act.Error ( src/Act/Error.hs, interpreted )
[ 6 of 20] Compiling Act.Parse ( /Users/zoo/Repos/act/dist-newstyle/build/x86_64-osx/ghc-9.4.8/act-0.1.0.0/build/Act/Parse.hs, interpreted )
[ 7 of 20] Compiling Act.Syntax.TimeAgnostic ( src/Act/Syntax/TimeAgnostic.hs, interpreted )
[ 8 of 20] Compiling Act.Syntax.Typed ( src/Act/Syntax/Typed.hs, interpreted )
[ 9 of 20] Compiling Act.Syntax.Annotated ( src/Act/Syntax/Annotated.hs, interpreted )
[10 of 20] Compiling Act.HEVM_utils ( src/Act/HEVM_utils.hs, interpreted )
[11 of 20] Compiling Act.Syntax ( src/Act/Syntax.hs, interpreted )
[12 of 20] Compiling Act.HEVM ( src/Act/HEVM.hs, interpreted )
[13 of 20] Compiling Act.Coq ( src/Act/Coq.hs, interpreted )
[14 of 20] Compiling Act.Print ( src/Act/Print.hs, interpreted )
[15 of 20] Compiling Act.Type ( src/Act/Type.hs, interpreted )
[16 of 20] Compiling Act.SMT ( src/Act/SMT.hs, interpreted )
[17 of 20] Compiling Act.Consistency ( src/Act/Consistency.hs, interpreted )
[18 of 20] Compiling Act.Enrich ( src/Act/Enrich.hs, interpreted )
[19 of 20] Compiling Act.CLI ( src/Act/CLI.hs, interpreted )
[20 of 20] Compiling Act.Dev ( src/Act/Dev.hs, interpreted )
Ok, 20 modules loaded.
ghci> :q
Leaving GHCi.
Zoes-MacBook-Pro:act zoo$ make test
cabal v2-install --installdir=bin --overwrite-policy=always
Warning: The package list for 'hackage.haskell.org' is 71 days old.
Run 'cabal update' to get the latest list of available packages.
Wrote tarball sdist to
/Users/zoo/Repos/act/dist-newstyle/sdist/act-0.1.0.0.tar.gz
Warning: The package list for 'hackage.haskell.org' is 71 days old.
Run 'cabal update' to get the latest list of available packages.
Resolving dependencies...
Build profile: -w ghc-9.4.8 -O1
In order, the following will be built (use -v for more details):
- act-0.1.0.0 (exe:act) (requires build)
Starting act-0.1.0.0 (exe:act)
Building act-0.1.0.0 (exe:act)
Failed to build exe:act from act-0.1.0.0.
Build log ( /Users/zoo/.cabal/logs/ghc-9.4.8/ct-0.1.0.0-beb53e96.log ):
Configuring executable 'act' for act-0.1.0.0..
Preprocessing executable 'act' for act-0.1.0.0..
Building executable 'act' for act-0.1.0.0..
[1 of 1] Compiling Main ( src/CLI/Main.hs, dist/build/act/act-tmp/Main.o )
[2 of 2] Linking dist/build/act/act
Undefined symbols for architecture x86_64:
"___cxa_free_exception", referenced from:
std::__1::__throw_length_error[abi:v160006](char const*) in libff.a(alt_bn128_g1.cpp.o)
libff::enter_block(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, bool) in libff.a(profiling.cpp.o)
libff::leave_block(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, bool) in libff.a(profiling.cpp.o)
"operator delete[](void*)", referenced from:
libff::init_alt_bn128_params() in libff.a(alt_bn128_init.cpp.o)
done0 in libff.a(alt_bn128_init.cpp.o)
done1 in libff.a(alt_bn128_init.cpp.o)
done2 in libff.a(alt_bn128_init.cpp.o)
done3 in libff.a(alt_bn128_init.cpp.o)
done4 in libff.a(alt_bn128_init.cpp.o)
done5 in libff.a(alt_bn128_init.cpp.o)
...
"operator delete(void*)", referenced from:
_ethjet_ecpairing in libHShevm-0.52.0-CCZJOZs40MI9tgkh5WHYEQ.a(ethjet-ff.o)
std::__1::vector<unsigned long, std::__1::allocator<unsigned long>>::~vector[abi:v160006]() in libff.a(alt_bn128_g1.cpp.o)
done81 in libff.a(alt_bn128_init.cpp.o)
done87 in libff.a(alt_bn128_init.cpp.o)
libff::alt_bn128_final_exponentiation_first_chunk(libff::Fp12_2over3over2_model<4l, libff::alt_bn128_modulus_q> const&) in libff.a(alt_bn128_pairing.cpp.o)
libff::alt_bn128_exp_by_neg_z(libff::Fp12_2over3over2_model<4l, libff::alt_bn128_modulus_q> const&) in libff.a(alt_bn128_pairing.cpp.o)
libff::alt_bn128_final_exponentiation_last_chunk(libff::Fp12_2over3over2_model<4l, libff::alt_bn128_modulus_q> const&) in libff.a(alt_bn128_pairing.cpp.o)
...
"___gxx_personality_v0", referenced from:
_ethjet_ecadd in libHShevm-0.52.0-CCZJOZs40MI9tgkh5WHYEQ.a(ethjet-ff.o)
_ethjet_ecmul in libHShevm-0.52.0-CCZJOZs40MI9tgkh5WHYEQ.a(ethjet-ff.o)
_ethjet_ecpairing in libHShevm-0.52.0-CCZJOZs40MI9tgkh5WHYEQ.a(ethjet-ff.o)
Dwarf Exception Unwind Info (__eh_frame) in libHShevm-0.52.0-CCZJOZs40MI9tgkh5WHYEQ.a(ethjet-ff.o)
std::__1::__throw_length_error[abi:v160006](char const*) in libff.a(alt_bn128_g1.cpp.o)
Dwarf Exception Unwind Info (__eh_frame) in libff.a(alt_bn128_g1.cpp.o)
libff::alt_bn128_final_exponentiation_first_chunk(libff::Fp12_2over3over2_model<4l, libff::alt_bn128_modulus_q> const&) in libff.a(alt_bn128_pairing.cpp.o)
...
"___cxa_allocate_exception", referenced from:
ethjet_ff::read_Fq_element(unsigned char*) in libHShevm-0.52.0-CCZJOZs40MI9tgkh5WHYEQ.a(ethjet-ff.o)
ethjet_ff::read_G1_point(unsigned char*) in libHShevm-0.52.0-CCZJOZs40MI9tgkh5WHYEQ.a(ethjet-ff.o)
ethjet_ff::read_G2_point(unsigned char*) in libHShevm-0.52.0-CCZJOZs40MI9tgkh5WHYEQ.a(ethjet-ff.o)
ethjet_ff::write_Fq_element(unsigned char*, libff::Fp_model<4l, libff::alt_bn128_modulus_q>) in libHShevm-0.52.0-CCZJOZs40MI9tgkh5WHYEQ.a(ethjet-ff.o)
std::__1::__throw_length_error[abi:v160006](char const*) in libff.a(alt_bn128_g1.cpp.o)
std::__throw_bad_array_new_length[abi:v160006]() in libff.a(alt_bn128_g1.cpp.o)
libff::enter_block(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, bool) in libff.a(profiling.cpp.o)
...
"___cxa_begin_catch", referenced from:
_ethjet_ecadd in libHShevm-0.52.0-CCZJOZs40MI9tgkh5WHYEQ.a(ethjet-ff.o)
_ethjet_ecmul in libHShevm-0.52.0-CCZJOZs40MI9tgkh5WHYEQ.a(ethjet-ff.o)
_ethjet_ecpairing in libHShevm-0.52.0-CCZJOZs40MI9tgkh5WHYEQ.a(ethjet-ff.o)
"___cxa_end_catch", referenced from:
_ethjet_ecadd in libHShevm-0.52.0-CCZJOZs40MI9tgkh5WHYEQ.a(ethjet-ff.o)
_ethjet_ecmul in libHShevm-0.52.0-CCZJOZs40MI9tgkh5WHYEQ.a(ethjet-ff.o)
_ethjet_ecpairing in libHShevm-0.52.0-CCZJOZs40MI9tgkh5WHYEQ.a(ethjet-ff.o)
"operator new(unsigned long)", referenced from:
done81 in libff.a(alt_bn128_init.cpp.o)
done87 in libff.a(alt_bn128_init.cpp.o)
libff::alt_bn128_final_exponentiation_first_chunk(libff::Fp12_2over3over2_model<4l, libff::alt_bn128_modulus_q> const&) in libff.a(alt_bn128_pairing.cpp.o)
libff::alt_bn128_exp_by_neg_z(libff::Fp12_2over3over2_model<4l, libff::alt_bn128_modulus_q> const&) in libff.a(alt_bn128_pairing.cpp.o)
libff::alt_bn128_final_exponentiation_last_chunk(libff::Fp12_2over3over2_model<4l, libff::alt_bn128_modulus_q> const&) in libff.a(alt_bn128_pairing.cpp.o)
libff::alt_bn128_final_exponentiation(libff::Fp12_2over3over2_model<4l, libff::alt_bn128_modulus_q> const&) in libff.a(alt_bn128_pairing.cpp.o)
libff::alt_bn128_ate_precompute_G1(libff::alt_bn128_G1 const&) in libff.a(alt_bn128_pairing.cpp.o)
...
"operator new[](unsigned long)", referenced from:
libff::init_alt_bn128_params() in libff.a(alt_bn128_init.cpp.o)
done0 in libff.a(alt_bn128_init.cpp.o)
done1 in libff.a(alt_bn128_init.cpp.o)
done2 in libff.a(alt_bn128_init.cpp.o)
done3 in libff.a(alt_bn128_init.cpp.o)
done4 in libff.a(alt_bn128_init.cpp.o)
done5 in libff.a(alt_bn128_init.cpp.o)
...
"___cxa_throw", referenced from:
ethjet_ff::read_Fq_element(unsigned char*) in libHShevm-0.52.0-CCZJOZs40MI9tgkh5WHYEQ.a(ethjet-ff.o)
ethjet_ff::read_G1_point(unsigned char*) in libHShevm-0.52.0-CCZJOZs40MI9tgkh5WHYEQ.a(ethjet-ff.o)
ethjet_ff::read_G2_point(unsigned char*) in libHShevm-0.52.0-CCZJOZs40MI9tgkh5WHYEQ.a(ethjet-ff.o)
ethjet_ff::write_Fq_element(unsigned char*, libff::Fp_model<4l, libff::alt_bn128_modulus_q>) in libHShevm-0.52.0-CCZJOZs40MI9tgkh5WHYEQ.a(ethjet-ff.o)
std::__1::__throw_length_error[abi:v160006](char const*) in libff.a(alt_bn128_g1.cpp.o)
std::__throw_bad_array_new_length[abi:v160006]() in libff.a(alt_bn128_g1.cpp.o)
libff::enter_block(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, bool) in libff.a(profiling.cpp.o)
...
ld: symbol(s) not found for architecture x86_64
clang-16: error: linker command failed with exit code 1 (use -v to see invocation)
ghc: `cc' failed in phase `Linker'. (Exit code: 1)
Error: cabal: Failed to build exe:act from act-0.1.0.0. See the build log
above for details.
make: *** [Makefile:14: bin/act] Error 1
Zoes-MacBook-Pro:act zoo$ exot
bash: exot: command not found
Zoes-MacBook-Pro:act zoo$ exit
exit
➜ act git:(amm-test) ✗ nix develop
warning: Git tree '/Users/zoo/Repos/act' is dirty
warning: updating lock file '/Users/zoo/Repos/act/flake.lock':
• Updated input 'hevmUpstream':
'github:ethereum/hevm/b025ea2162373916953d6bfe3430859222f298f7' (2024-02-06)
→ 'github:ethereum/hevm/ee4682e0d95000d3694dda7e251bf100a3962cdc' (2024-02-06)
• Added input 'hevmUpstream/bitwuzla-pkgs':
'github:d-xo/nixpkgs/6e7c9e4267f3c2df116bf76d8e31c2602e2d543d' (2024-01-14)
warning: Git tree '/Users/zoo/Repos/act' is dirty
Zoes-MacBook-Pro:act zoo$ make test
cabal v2-install --installdir=bin --overwrite-policy=always
Warning: The package list for 'hackage.haskell.org' is 71 days old.
Run 'cabal update' to get the latest list of available packages.
Wrote tarball sdist to
/Users/zoo/Repos/act/dist-newstyle/sdist/act-0.1.0.0.tar.gz
Warning: The package list for 'hackage.haskell.org' is 71 days old.
Run 'cabal update' to get the latest list of available packages.
Resolving dependencies...
Build profile: -w ghc-9.4.8 -O1
In order, the following will be built (use -v for more details):
- act-0.1.0.0 (exe:act) (requires build)
Starting act-0.1.0.0 (exe:act)
Building act-0.1.0.0 (exe:act)
Failed to build exe:act from act-0.1.0.0.
Build log ( /Users/zoo/.cabal/logs/ghc-9.4.8/ct-0.1.0.0-beb53e96.log ):
Configuring executable 'act' for act-0.1.0.0..
Preprocessing executable 'act' for act-0.1.0.0..
Building executable 'act' for act-0.1.0.0..
[1 of 1] Compiling Main ( src/CLI/Main.hs, dist/build/act/act-tmp/Main.o )
[2 of 2] Linking dist/build/act/act
Undefined symbols for architecture x86_64:
"operator new[](unsigned long)", referenced from:
libff::init_alt_bn128_params() in libff.a(alt_bn128_init.cpp.o)
done0 in libff.a(alt_bn128_init.cpp.o)
done1 in libff.a(alt_bn128_init.cpp.o)
done2 in libff.a(alt_bn128_init.cpp.o)
done3 in libff.a(alt_bn128_init.cpp.o)
done4 in libff.a(alt_bn128_init.cpp.o)
done5 in libff.a(alt_bn128_init.cpp.o)
...
"operator delete[](void*)", referenced from:
libff::init_alt_bn128_params() in libff.a(alt_bn128_init.cpp.o)
done0 in libff.a(alt_bn128_init.cpp.o)
done1 in libff.a(alt_bn128_init.cpp.o)
done2 in libff.a(alt_bn128_init.cpp.o)
done3 in libff.a(alt_bn128_init.cpp.o)
done4 in libff.a(alt_bn128_init.cpp.o)
done5 in libff.a(alt_bn128_init.cpp.o)
...
"_hevmzm0zi52zi0zmCCZZJOZZs40MI9tgkh5WHYEQ_EVMziSymExec_flattenExprzugo_closure", referenced from:
_Lu1JQ6_srt in libHSct-0.1.0.0-d07f3244.a(HEVM_utils.o)
"___cxa_free_exception", referenced from:
std::__1::__throw_length_error[abi:v160006](char const*) in libff.a(alt_bn128_g1.cpp.o)
libff::enter_block(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, bool) in libff.a(profiling.cpp.o)
libff::leave_block(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, bool) in libff.a(profiling.cpp.o)
"operator delete(void*)", referenced from:
_ethjet_ecpairing in libHShevm-0.52.0-CCZJOZs40MI9tgkh5WHYEQ.a(ethjet-ff.o)
std::__1::vector<unsigned long, std::__1::allocator<unsigned long>>::~vector[abi:v160006]() in libff.a(alt_bn128_g1.cpp.o)
done81 in libff.a(alt_bn128_init.cpp.o)
done87 in libff.a(alt_bn128_init.cpp.o)
libff::alt_bn128_final_exponentiation_first_chunk(libff::Fp12_2over3over2_model<4l, libff::alt_bn128_modulus_q> const&) in libff.a(alt_bn128_pairing.cpp.o)
libff::alt_bn128_exp_by_neg_z(libff::Fp12_2over3over2_model<4l, libff::alt_bn128_modulus_q> const&) in libff.a(alt_bn128_pairing.cpp.o)
libff::alt_bn128_final_exponentiation_last_chunk(libff::Fp12_2over3over2_model<4l, libff::alt_bn128_modulus_q> const&) in libff.a(alt_bn128_pairing.cpp.o)
...
"___gxx_personality_v0", referenced from:
_ethjet_ecadd in libHShevm-0.52.0-CCZJOZs40MI9tgkh5WHYEQ.a(ethjet-ff.o)
_ethjet_ecmul in libHShevm-0.52.0-CCZJOZs40MI9tgkh5WHYEQ.a(ethjet-ff.o)
_ethjet_ecpairing in libHShevm-0.52.0-CCZJOZs40MI9tgkh5WHYEQ.a(ethjet-ff.o)
Dwarf Exception Unwind Info (__eh_frame) in libHShevm-0.52.0-CCZJOZs40MI9tgkh5WHYEQ.a(ethjet-ff.o)
std::__1::__throw_length_error[abi:v160006](char const*) in libff.a(alt_bn128_g1.cpp.o)
Dwarf Exception Unwind Info (__eh_frame) in libff.a(alt_bn128_g1.cpp.o)
libff::alt_bn128_final_exponentiation_first_chunk(libff::Fp12_2over3over2_model<4l, libff::alt_bn128_modulus_q> const&) in libff.a(alt_bn128_pairing.cpp.o)
...
"operator new(unsigned long)", referenced from:
done81 in libff.a(alt_bn128_init.cpp.o)
done87 in libff.a(alt_bn128_init.cpp.o)
libff::alt_bn128_final_exponentiation_first_chunk(libff::Fp12_2over3over2_model<4l, libff::alt_bn128_modulus_q> const&) in libff.a(alt_bn128_pairing.cpp.o)
libff::alt_bn128_exp_by_neg_z(libff::Fp12_2over3over2_model<4l, libff::alt_bn128_modulus_q> const&) in libff.a(alt_bn128_pairing.cpp.o)
libff::alt_bn128_final_exponentiation_last_chunk(libff::Fp12_2over3over2_model<4l, libff::alt_bn128_modulus_q> const&) in libff.a(alt_bn128_pairing.cpp.o)
libff::alt_bn128_final_exponentiation(libff::Fp12_2over3over2_model<4l, libff::alt_bn128_modulus_q> const&) in libff.a(alt_bn128_pairing.cpp.o)
libff::alt_bn128_ate_precompute_G1(libff::alt_bn128_G1 const&) in libff.a(alt_bn128_pairing.cpp.o)
...
"_hevmzm0zi52zi0zmCCZZJOZZs40MI9tgkh5WHYEQ_EVMziSymExec_flattenExprzugo_info", referenced from:
_Lc1JOr_info in libHSct-0.1.0.0-d07f3244.a(HEVM_utils.o)
_Lc1JUZ_info in libHSct-0.1.0.0-d07f3244.a(HEVM_utils.o)
"___cxa_begin_catch", referenced from:
_ethjet_ecadd in libHShevm-0.52.0-CCZJOZs40MI9tgkh5WHYEQ.a(ethjet-ff.o)
_ethjet_ecmul in libHShevm-0.52.0-CCZJOZs40MI9tgkh5WHYEQ.a(ethjet-ff.o)
_ethjet_ecpairing in libHShevm-0.52.0-CCZJOZs40MI9tgkh5WHYEQ.a(ethjet-ff.o)
"___cxa_allocate_exception", referenced from:
ethjet_ff::read_Fq_element(unsigned char*) in libHShevm-0.52.0-CCZJOZs40MI9tgkh5WHYEQ.a(ethjet-ff.o)
ethjet_ff::read_G1_point(unsigned char*) in libHShevm-0.52.0-CCZJOZs40MI9tgkh5WHYEQ.a(ethjet-ff.o)
ethjet_ff::read_G2_point(unsigned char*) in libHShevm-0.52.0-CCZJOZs40MI9tgkh5WHYEQ.a(ethjet-ff.o)
ethjet_ff::write_Fq_element(unsigned char*, libff::Fp_model<4l, libff::alt_bn128_modulus_q>) in libHShevm-0.52.0-CCZJOZs40MI9tgkh5WHYEQ.a(ethjet-ff.o)
std::__1::__throw_length_error[abi:v160006](char const*) in libff.a(alt_bn128_g1.cpp.o)
std::__throw_bad_array_new_length[abi:v160006]() in libff.a(alt_bn128_g1.cpp.o)
libff::enter_block(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, bool) in libff.a(profiling.cpp.o)
...
"___cxa_throw", referenced from:
ethjet_ff::read_Fq_element(unsigned char*) in libHShevm-0.52.0-CCZJOZs40MI9tgkh5WHYEQ.a(ethjet-ff.o)
ethjet_ff::read_G1_point(unsigned char*) in libHShevm-0.52.0-CCZJOZs40MI9tgkh5WHYEQ.a(ethjet-ff.o)
ethjet_ff::read_G2_point(unsigned char*) in libHShevm-0.52.0-CCZJOZs40MI9tgkh5WHYEQ.a(ethjet-ff.o)
ethjet_ff::write_Fq_element(unsigned char*, libff::Fp_model<4l, libff::alt_bn128_modulus_q>) in libHShevm-0.52.0-CCZJOZs40MI9tgkh5WHYEQ.a(ethjet-ff.o)
std::__1::__throw_length_error[abi:v160006](char const*) in libff.a(alt_bn128_g1.cpp.o)
std::__throw_bad_array_new_length[abi:v160006]() in libff.a(alt_bn128_g1.cpp.o)
libff::enter_block(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, bool) in libff.a(profiling.cpp.o)
...
"___cxa_end_catch", referenced from:
_ethjet_ecadd in libHShevm-0.52.0-CCZJOZs40MI9tgkh5WHYEQ.a(ethjet-ff.o)
_ethjet_ecmul in libHShevm-0.52.0-CCZJOZs40MI9tgkh5WHYEQ.a(ethjet-ff.o)
_ethjet_ecpairing in libHShevm-0.52.0-CCZJOZs40MI9tgkh5WHYEQ.a(ethjet-ff.o)
"_hevmzm0zi52zi0zmCCZZJOZZs40MI9tgkh5WHYEQ_EVMziTypes_zdfEqContractCodezuzdczeze2_closure", referenced from:
_ctzm0zi1zi0zi0zmd07f3244_ActziHEVMzuutils_zdwgo1_closure in libHSct-0.1.0.0-d07f3244.a(HEVM_utils.o)
"_hevmzm0zi52zi0zmCCZZJOZZs40MI9tgkh5WHYEQ_EVMziTypes_zdfEqContractCodezuzdczeze2_info", referenced from:
_Lc1JIV_info in libHSct-0.1.0.0-d07f3244.a(HEVM_utils.o)
ld: symbol(s) not found for architecture x86_64
clang-16: error: linker command failed with exit code 1 (use -v to see invocation)
ghc: `cc' failed in phase `Linker'. (Exit code: 1)
Error: cabal: Failed to build exe:act from act-0.1.0.0. See the build log
above for details.
make: *** [Makefile:14: bin/act] Error 1
My initial hunch is that some C++ standard library parts are not being linked in. The delete
and new
, etc. missing sounds like a build issue related to C vs C++. More precisely, it may be that a C linker is being used to link C++ things together. I'll see what I can do :)