ethereum / hevm

symbolic EVM evaluator
https://hevm.dev
GNU Affero General Public License v3.0
229 stars 48 forks source link

Fix static binaries #2

Closed d-xo closed 2 years ago

d-xo commented 2 years ago

The build for the static binaries (run nix-build from the repo root) currently fails.

msooseth commented 2 years ago

I actually made progress. From the nix-shell one can type [1] which will get the exact call that will error out [2] as when one types nix-build

The error in [2] is -L/nix/store/cw7x57ddnpm5z40dal48wvjl2yfvssi6-glibc-2.34-210-static/lib if instead it had -L/nix/store/lxpdbaazqd2s79jx6lngr8nak2rjdaq1-glibc-2.34-210/lib/ i.e. the non-static version, it would build the library.

I will see how that static glibc got in there, and see if I can fix it.

[1]

cabal build --extra-lib-dirs=/nix/store/amw8kvyspgwhyxa3dwcixcz1ajn142d1-gmp-with-cxx-6.2.1/lib --extra-lib-dirs=/nix/store/cw7x57ddnpm5z40dal48wvjl2yfvssi6-glibc-2.34-210-static/lib --extra-lib-dirs=/nix/store/431m8xx69q6q78bpjgwr57akv2q4qjls-libff-1.0.0/lib --extra-lib-dirs=/nix/store/chip3lk3v0fsb2mgzsd8sgk03xjvybxd-ncurses-6.3-p20220507/lib --extra-lib-dirs=/nix/store/hzw51k7zn7ng59h4vdpqck08d0kh4279-zlib-1.2.12-static/lib --extra-lib-dirs=/nix/store/r2c05fab2b4pf1g1r2yyp3qnmz8bg3j3-libffi-3.4.2/lib --extra-lib-dirs=/nix/store/x8a6rzpikiacpq2qddzbilc6hxng0nyi-ncurses-6.3-p20220507/lib --extra-lib-dirs=/nix/store/3vm2kllnqx43h56sajszipvfrypifc53-libffi-3.4.2/lib --extra-lib-dirs=/nix/store/qdilwnvmdaj30v64w9jggnsxagh297b4-gmp-with-cxx-6.2.1/lib --extra-include-dirs=/nix/store/znn7frpgbrhgi4z7kch11cwhhvkwmqh1-libff-0.2.1/include --extra-lib-dirs=/nix/store/znn7frpgbrhgi4z7kch11cwhhvkwmqh1-libff-0.2.1/lib --extra-include-dirs=/nix/store/l15cv8xkcgzihi6lxqw45dcrf7zg28n1-secp256k1-unstable-2022-02-06/include --extra-lib-dirs=/nix/store/l15cv8xkcgzihi6lxqw45dcrf7zg28n1-secp256k1-unstable-2022-02-06/lib --extra-include-dirs=/nix/store/17mp3ikda4hss2mxmr0jqz5mylqhbgvc-z3-4.8.15-dev/include --extra-lib-dirs=/nix/store/wp8mmmn445da7k0z3196ihyjjc7x09fw-python2.7-setuptools-44.0.0/lib --extra-include-dirs=/nix/store/jfy58aylcmi3fxf3jvjxv9sdvw0wj34m-python-2.7.18/include --extra-lib-dirs=/nix/store/jfy58aylcmi3fxf3jvjxv9sdvw0wj34m-python-2.7.18/lib --extra-lib-dirs=/nix/store/ppwqis1gzi735g2q201i4zl1ic7sd0ri-z3-4.8.15-lib/lib --extra-include-dirs=/nix/store/vb8d7pldi3vn1sh6nnrp390h0d0w042c-cvc4-1.8/include --extra-lib-dirs=/nix/store/vb8d7pldi3vn1sh6nnrp390h0d0w042c-cvc4-1.8/lib  --enable-executable-static --verbose=3 exe:hevm

[2]

/nix/store/njkhbd6yhb1sj5pvvrflkzxl8kd16nwj-ghc-9.0.2-with-packages/bin/ghc -shared -dynamic -lsecp256k1 -lff -L/nix/store/amw8kvyspgwhyxa3dwcixcz1ajn142d1-gmp-with-cxx-6.2.1/lib -L/nix/store/cw7x57ddnpm5z40dal48wvjl2yfvssi6-glibc-2.34-210-static/lib -L/nix/store/431m8xx69q6q78bpjgwr57akv2q4qjls-libff-1.0.0/lib -L/nix/store/chip3lk3v0fsb2mgzsd8sgk03xjvybxd-ncurses-6.3-p20220507/lib -L/nix/store/hzw51k7zn7ng59h4vdpqck08d0kh4279-zlib-1.2.12-static/lib -L/nix/store/r2c05fab2b4pf1g1r2yyp3qnmz8bg3j3-libffi-3.4.2/lib -L/nix/store/x8a6rzpikiacpq2qddzbilc6hxng0nyi-ncurses-6.3-p20220507/lib -L/nix/store/3vm2kllnqx43h56sajszipvfrypifc53-libffi-3.4.2/lib -L/nix/store/qdilwnvmdaj30v64w9jggnsxagh297b4-gmp-with-cxx-6.2.1/lib -L/nix/store/znn7frpgbrhgi4z7kch11cwhhvkwmqh1-libff-0.2.1/lib -L/nix/store/l15cv8xkcgzihi6lxqw45dcrf7zg28n1-secp256k1-unstable-2022-02-06/lib -L/nix/store/wp8mmmn445da7k0z3196ihyjjc7x09fw-python2.7-setuptools-44.0.0/lib -L/nix/store/jfy58aylcmi3fxf3jvjxv9sdvw0wj34m-python-2.7.18/lib -L/nix/store/ppwqis1gzi735g2q201i4zl1ic7sd0ri-z3-4.8.15-lib/lib -L/nix/store/vb8d7pldi3vn1sh6nnrp390h0d0w042c-cvc4-1.8/lib '-dynload deploy' -optl-Wl,-rpath,/nix/store/rmi3kpj94pcwf1vcpxjz39nr0j0jk32c-Decimal-0.5.2/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/rwqc8g0hb00cm8nb51sld2hv7ahffpap-HSH-2.1.3/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/lz9zy56jdjr8xizdl21rgvpmxvn9cwz6-MissingH-1.5.0.1/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/5z55bnwvypr9hp3s88rwnf6v22p8w6g7-OneTuple-0.3.1/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/hlxkvrf6hmy6b6zaw5dsnwq9cbcswmrn-Only-0.1/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/1pq054smfrxf4vpyj2d03swk8z45ac0p-QuickCheck-2.14.2/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/i37q1yipnjlvsl5cg0n88pplfjsnz1hg-RSA-2.4.1/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/yz4azg36sgpymk3kq7djv0wbr3cc0f2p-SHA-1.6.4.4/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/accjpxqafy12791mfr3gvbqj4nzkmyhc-StateVar-1.2.2/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/y7qy2si1qg3blmmar38qzliclhp2mxj9-abstract-deque-0.3/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/19dk3ng0mj1xphkvn7k1p1l9x8gmqwqf-abstract-par-0.3.3/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/nzg39zcsxlinnvdw0jvxj0qijk3vm88b-adjunctions-4.4/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/xadfs1as64rp016903nywg70j593j397-aeson-2.0.3.0/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/0y42606169jalp9z1vr0v54krcbzi4wg-ansi-terminal-0.11.3/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/sp9m9cdyz28ns05kq2k4mc5g3l94p4xf-ansi-wl-pprint-0.6.9/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/jhik76hyy3f72brxbwr32m6yxi0q4bf2-appar-0.1.8/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/cq1yid1050qzwy629mwmy23n5bjb6clz-ghc-9.0.2/lib/ghc-9.0.2/array-0.5.4.0 -optl-Wl,-rpath,/nix/store/b20cgwqa5zsw48gd41qrswxgfwc576ca-asn1-encoding-0.9.6/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/blc5rklzx392qzpdlb7bqakjsszyz905-asn1-parse-0.9.5/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/0hrmmc252zbyaimj4dr9znm29scprfcc-asn1-types-0.3.4/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/csxx5w00jq3lvxvv1hhixlna24q63jc9-assoc-1.0.2/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/rwvp9flxajbhfav0n1lc4grx0vp411f0-async-2.2.4/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/jl8lwgl7yyxin7q7vjkwk8lwwqz7apya-attoparsec-0.14.4/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/96a7gz60xvklsd123mdjsnpc6z7ldrbp-authenticate-oauth-1.7/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/cq1yid1050qzwy629mwmy23n5bjb6clz-ghc-9.0.2/lib/ghc-9.0.2/base-4.15.1.0 -optl-Wl,-rpath,/nix/store/p9n2dxxk9wnjfzjwpi3mrk42lmqhbzdb-base-compat-0.11.2/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/23s4bdnas18fvwywlkpsl4f60lyh6qlz-base-compat-batteries-0.11.2/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/cz2wnjwmb6qkrrz6ha7flhpxf87y8xpy-base-orphans-0.8.6/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/d0b9s4rhw94fc447p3ya19pzlfp2csb0-base16-bytestring-1.0.2.0/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/25643sy29abw5jf42ws5rp6nscxvnn5k-base64-bytestring-1.2.1.0/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/bd8fflqhv7g6lq0074037yaqkjrgs3n8-basement-0.0.14/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/nnqrgw2my3zy6gkgkn6xdm1mv1b9n3fs-basic-prelude-0.7.0/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/n0p65k78nfkin1bh8l0p57z47xj5kqwg-bifunctors-5.5.11/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/cq1yid1050qzwy629mwmy23n5bjb6clz-ghc-9.0.2/lib/ghc-9.0.2/binary-0.8.8.0 -optl-Wl,-rpath,/nix/store/nq9rvc3s7lhxg6zavp1zcz9fxjrs10m6-blaze-builder-0.4.2.2/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/b3ac10gzbqa5s0kw8hpkwi7ah52ylvwg-brick-0.68.1/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/im1mwrjg7gwian3y8lisd8a76x1rhx4q-byteorder-1.0.4/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/cq1yid1050qzwy629mwmy23n5bjb6clz-ghc-9.0.2/lib/ghc-9.0.2/bytestring-0.10.12.1 -optl-Wl,-rpath,/nix/store/dzsaqni7ls1cl82lwdyiiydjdradqhvr-call-stack-0.4.0/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/vijysmmrjrfiqxwr89ky1rqlmzf2i35k-case-insensitive-1.2.1.0/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/r9p5wn91hfw2rgap0zs4wpzz6h62dbrm-cereal-0.5.8.2/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/3yclnvnjj1irw8i11k3iawg8b4sld93k-chunked-data-0.3.1/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/ikn1lrw8kkv55xb4jgp11f9ldx7mr364-classy-prelude-1.5.0.2/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/jx4553rhy2975idr68lqsm54w703726r-clock-0.8.3/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/9g0hfmi707v9iwxi7w5jvyb1w26bvwp5-colour-2.3.6/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/il3s54byv56l1wzq3w9cy3w41qfk2klk-comonad-5.0.8/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/hr1221w9f77fv6x7vxs9avszrag4hx71-config-ini-0.2.4.0/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/wkpdqbnxyc56gpcgj0ys2ydxivaas19q-connection-0.3.1/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/cq1yid1050qzwy629mwmy23n5bjb6clz-ghc-9.0.2/lib/ghc-9.0.2/containers-0.6.4.1 -optl-Wl,-rpath,/nix/store/5a019r71sadh9qa9h8cagwsvr9mjbmcg-contravariant-1.5.5/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/6sjxy207sq9yv151zgfvlfn6nlhs3kg0-cookie-0.4.5/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/zdwncskrd4a6s00njwl9jk8s6cvg0ib1-crypto-api-0.13.3/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/p7jwfbhcnpik69k1gy5yr312fadfgfzv-crypto-pubkey-types-0.4.3/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/a0im36ppnnmw8j87552mlz8l5dlw8pj1-cryptonite-0.29/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/qywryp5bn389w0n55s6vnc7ldmx3v5s9-data-bword-0.1.0.1/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/2w0b8dammmrhb6haj7kbwdb1c3mbyh6r-data-clist-0.2/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/n0bqk7r79ky7hclm0n1wkbs3gldjvnjz-data-default-0.7.1.1/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/zmzpgwns1nj7a80259q3vjqfmk59rjrr-data-default-class-0.1.2.0/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/xr41bwxdlhha08qphpnpyjx5n7cm51g5-data-default-instances-containers-0.0.1/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/n430lp3hbv048c4sb018pksf6h9pm28n-data-default-instances-dlist-0.0.1/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/smaj7gnalkyz2yyinwdj8qi1q2n6k07l-data-default-instances-old-locale-0.0.1/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/rv18bj6g4fhhxvfwq4xiql1zxn7fs2gr-data-dword-0.3.2.1/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/rbbrr2wk2f7kvk44zcl1dqavz82i0i38-data-fix-0.3.2/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/cq1yid1050qzwy629mwmy23n5bjb6clz-ghc-9.0.2/lib/ghc-9.0.2/deepseq-1.4.5.0 -optl-Wl,-rpath,/nix/store/cq1yid1050qzwy629mwmy23n5bjb6clz-ghc-9.0.2/lib/ghc-9.0.2/directory-1.3.6.2 -optl-Wl,-rpath,/nix/store/cpy0m0hm5ay4m33wqxv99wbxyb9lp44b-distributive-0.6.2.1/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/fh8l8jrw0digkdg2grkax70h3yh101pw-dlist-1.0/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/frsvw4gkbwzf6s9gpxxllnlyzpd4s4x0-dlist-instances-0.1.1.1/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/b87m07y16cfl7ar597dni8rs85wx1q5n-entropy-0.4.1.7/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/cq1yid1050qzwy629mwmy23n5bjb6clz-ghc-9.0.2/lib/ghc-9.0.2/exceptions-0.10.4 -optl-Wl,-rpath,/nix/store/xj6mxwn1719053a20y3khkzy0scmvrac-fgl-5.7.0.3/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/cq1yid1050qzwy629mwmy23n5bjb6clz-ghc-9.0.2/lib/ghc-9.0.2/filepath-1.4.2.1 -optl-Wl,-rpath,/nix/store/59rhc7n3hf0rpw0v8dk79l1hfli5j33s-free-5.1.7/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/cq1yid1050qzwy629mwmy23n5bjb6clz-ghc-9.0.2/lib/ghc-9.0.2/ghc-bignum-1.1 -optl-Wl,-rpath,/nix/store/cq1yid1050qzwy629mwmy23n5bjb6clz-ghc-9.0.2/lib/ghc-9.0.2/ghc-boot-th-9.0.2 -optl-Wl,-rpath,/nix/store/cq1yid1050qzwy629mwmy23n5bjb6clz-ghc-9.0.2/lib/ghc-9.0.2/ghc-prim-0.7.0 -optl-Wl,-rpath,/nix/store/0p3llnfnivnyxd9a4yhwvx6935y2m2j2-hashable-1.3.5.0/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/cq1yid1050qzwy629mwmy23n5bjb6clz-ghc-9.0.2/lib/ghc-9.0.2/haskeline-0.8.2 -optl-Wl,-rpath,/nix/store/4g83414aav99w9qvi9gkadqv6xl2qcg4-haskell-src-exts-1.23.1/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/wi6c5f7a9wiwqwfmw5cx50w8swcg565y-haskell-src-meta-0.8.9/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/0ydka7f18vjbwvf28h4q935wi6mg5al2-here-1.2.13/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/25lcpbny306w8bfa2kfsbyppfmlyyz64-hourglass-0.2.12/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/zcljpab18z7q74yq1p7rnl87q0r9lsx1-hslogger-1.3.1.0/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/knmw33110k3q8npvfsiwk10dxcvgx4ms-http-client-0.7.11/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/5s8lvgpyv6gvbl5i8fjp0dc9fzyn1gn4-http-client-tls-0.3.6.1/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/wnv12iqwpq5sqm23yil81lqvadx09vqz-http-types-0.12.3/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/bqy1qins2rakz9swn6q5yfbq5mapg2g4-indexed-traversable-0.1.2/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/lkhx8dd776jg2ygnhscbc7pmvwd5j3pd-indexed-traversable-instances-0.1.1/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/cq1yid1050qzwy629mwmy23n5bjb6clz-ghc-9.0.2/lib/ghc-9.0.2/integer-gmp-1.1 -optl-Wl,-rpath,/nix/store/jd728h9gdha764yrqy2zxv3nnn7v0cbb-integer-logarithms-1.0.3.1/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/zj51l4kfp8shf75wb1wv9rw4f20pw28f-invariant-0.5.5/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/g4lwhannbxcrqhfwz329rm5rklcny9hh-iproute-1.7.12/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/49nyv30c0mssx03hlfl76az9sqvir4h0-kan-extensions-5.2.3/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/bipsghr4q9bzpz8dqsqi07nb65cvdq5r-keys-3.12.3/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/n5cnqyl2bqn1r709c44vsdjilfciidx8-lens-5.0.1/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/xb4xjmz8lwk9p58zcxd69d3wz655w71r-lens-aeson-1.1.3/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/hp8rkdwys96inrp3wkcmg6gv3nk4f62a-math-functions-0.3.4.2/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/i4gnj8jgwrwyz5mqkirndrjymivj898j-megaparsec-9.2.0/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/75kc4vmv48sc812ax0hqsz5n3ki6wlz7-memory-0.16.0/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/i2vnyydmc33kg118pmn9zld9q5y1q70p-microlens-0.4.12.0/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/s24mvazl56fylzg3nfwb0wi8rd17fl90-microlens-mtl-0.2.0.1/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/kfnk8kdxdpc3wqmzy3ay4ln9qdb7lzah-microlens-th-0.4.3.10/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/6njfdqrz4bfxbjikwnqkf1hzqmlagrxg-mime-types-0.1.0.9/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/b062dz8kj017f9gbgchgvrv8dbg6g2rb-monad-par-0.3.5/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/w5ixw0lm2c0k896zjwzw75q2l2qvf9dn-monad-par-extras-0.3.3/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/z7ry5pb2186gijpsgnsdc7m63kg3bps8-mono-traversable-1.0.15.3/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/vpi0axxrjcyis5kjax9gzk1r4zfhrsi7-mono-traversable-instances-0.1.1.0/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/cq1yid1050qzwy629mwmy23n5bjb6clz-ghc-9.0.2/lib/ghc-9.0.2/mtl-2.2.2 -optl-Wl,-rpath,/nix/store/pvjs1wjd1yw55j5nxlhwgmbvdg3kgpi4-multiset-0.3.4.3/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/cq1yid1050qzwy629mwmy23n5bjb6clz-ghc-9.0.2/lib -optl-Wl,-rpath,/nix/store/a0rfk45xbqqnab8s5vj6v0ssndfcvhjz-mutable-containers-0.3.4/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/rsi26rc88r6nhnifjng8paigq3bxi8bq-mwc-random-0.15.0.2/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/ak8rs124wgraiwljclknb1h95sz39zrc-network-3.1.2.7/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/1k4yaniygf6s43kzqsjgck34h6yhcfg1-network-bsd-2.8.1.0/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/ry2qrx4dvpckzm04jgrqidy1497z52km-network-uri-2.6.4.1/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/1i9z2cp63ksyf2h2lh8gxx9lqg8i9hjk-old-locale-1.0.0.7/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/pp1a0majp2slagzmg6hyq6nx1bgw3sx0-old-time-1.1.0.3/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/kpvdpw9rld4d5v0pwxqdmlw31jvc5s5w-operational-0.2.4.1/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/09cnmyiffy0nx7hx40s8cxrqmp71g8hx-optparse-applicative-0.16.1.0/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/4ym5wvswf2yhcygysczfa7wxsc48cld0-optparse-generic-1.4.7/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/8rpsf4yw87mx61w1vm945cybzm4n23qf-parallel-3.2.2.0/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/cq1yid1050qzwy629mwmy23n5bjb6clz-ghc-9.0.2/lib/ghc-9.0.2/parsec-3.1.14.0 -optl-Wl,-rpath,/nix/store/cr8scdjcsx9p5w32zi4av22h4kjyb70v-parser-combinators-1.3.0/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/82lwypv3y1kwyj5aam1p6fjhy8skhzn5-pem-0.2.4/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/h28nn3xh1izxyzibfppd8spqsxra5ciz-pointed-5.0.3/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/cq1yid1050qzwy629mwmy23n5bjb6clz-ghc-9.0.2/lib/ghc-9.0.2/pretty-1.1.3.6 -optl-Wl,-rpath,/nix/store/zk2kjkjr5r5sj74zsgrrmz7d2i5l5d63-primitive-0.7.3.0/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/cq1yid1050qzwy629mwmy23n5bjb6clz-ghc-9.0.2/lib/ghc-9.0.2/process-1.6.13.2 -optl-Wl,-rpath,/nix/store/j6hy3yshcvybnz1vnf1lxjhnqykkx2bp-profunctors-5.6.2/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/3zry9mb7shs2kbm8y0195558d64fkh82-psqueues-0.2.7.3/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/m3zz2mzx050q9631kaqs3qflxjndp5im-quickcheck-text-0.1.2.1/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/ig14124m71s1pniiyv1bwf03dqghfqk0-random-1.2.1/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/fdd3d7871b315ib1cvrkhiq405dm1pip-reflection-2.1.6/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/nb6axsqcrybxnlpanw8jg5f1h9fdiwdx-regex-base-0.94.0.2/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/065svspgh2xfy6ms6k4kxm29m98ypp2v-regex-compat-0.95.2.1/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/w463c9flgj5mvfdmzxb6yfzkcay75273-regex-posix-0.96.0.1/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/fkpv8kagmic99b3wa66nlqwn9i3bc4pf-regex-tdfa-1.3.1.2/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/ys40idcv24y6nvwm2kv8jh7i26q3578r-restless-git-0.7/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/h4xwf8nmpw544hz3h2mn2naa72jbgxyh-rosezipper-0.2/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/cq1yid1050qzwy629mwmy23n5bjb6clz-ghc-9.0.2/lib/ghc-9.0.2/rts -optl-Wl,-rpath,/nix/store/j8w6i44b67k7dka8q11xywchhj7149wq-s-cargot-0.1.4.0/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/xrrga1pi1s1g81klajnnqy7j0w5kw4s9-safe-0.3.19/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/937vmj88wml4rq66a4h7n6a7davmnwgh-say-0.1.0.1/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/32ax7fxja6dkgkygyaabbsq964i56168-scientific-0.3.7.0/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/d6ijwnpkwdchi9i43zg7jjngsznvwwhb-semialign-1.2.0.1/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/xdf7xj78irhmvxc46snd427p2i8gpkq1-semigroupoids-5.3.7/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/h9y1gyd5nzlda6nxrzdyhapr9jib23d5-semigroups-0.19.2/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/wb73kym3ih450ib6r0w090nr2l5dfpnx-semver-range-0.2.8/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/fz058ili44b807s28aib8layjranipx5-socks-0.6.1/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/nh6gjm1sq5lhaqzkbr0vi2kvphrb384q-split-0.2.3.4/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/xr7lz5njfnd76223hd5m4pfy0bylxpzw-splitmix-0.1.0.4/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/cq1yid1050qzwy629mwmy23n5bjb6clz-ghc-9.0.2/lib/ghc-9.0.2/stm-2.5.0.0 -optl-Wl,-rpath,/nix/store/8xrfa9cdbkjqym3a90lzfbrp63l03rjw-stm-chans-3.0.0.6/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/21s7rin59vii6yb9fzvaw277bmyacrbf-streaming-commons-0.2.2.4/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/cvixxq1gdq0rgrdgqpy8x5ygabhncn6v-strict-0.4.0.1/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/3y3plzs14951nnsnjbzw3g261qvdijm0-syb-0.7.2.1/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/dw2km0zjs7dp3xzckpxmfymdbakb876d-system-filepath-0.4.14/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/gn0bvb1mavxka90rlrgsn10qss4q3gvb-tagged-0.8.6.1/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/cq1yid1050qzwy629mwmy23n5bjb6clz-ghc-9.0.2/lib/ghc-9.0.2/template-haskell-2.17.0.0 -optl-Wl,-rpath,/nix/store/4wmdsw48q5bjpamnhyx485pybb9988gr-temporary-1.3/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/cq1yid1050qzwy629mwmy23n5bjb6clz-ghc-9.0.2/lib/ghc-9.0.2/terminfo-0.4.1.5 -optl-Wl,-rpath,/nix/store/cq1yid1050qzwy629mwmy23n5bjb6clz-ghc-9.0.2/lib/ghc-9.0.2/text-1.2.5.0 -optl-Wl,-rpath,/nix/store/r1znhsaf48cc6c85mnr1w8kmh4yhvwm8-text-short-0.1.5/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/4djsn85imikdavpa245hwjsd9h5r2fg8-text-zipper-0.11/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/1bw4brikrf2zkzwqybnm497qnqhvjk71-th-abstraction-0.4.3.0/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/5wx7zf04kc91vdbrkc8h31d378kly9l8-th-compat-0.1.3/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/2yp9apvgv3v9awigrf0gayimlfb8pvbp-th-expand-syns-0.4.9.0/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/wcjvi6k2wbk6p2qa8qwfvziycpx3wm7l-th-lift-0.8.2/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/108q32xnnclk85mg9nd9hiy4m2rg8kx2-th-lift-instances-0.1.19/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/znkgmj601yb4695zhk0xbzchj47ynpv8-th-orphans-0.13.12/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/jgn886km59g8n281jgiwhy0dpwcjrmpz-th-reify-many-0.1.10/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/7s0q08g90rzqh4mxd1n90fafkwwrqcbb-these-1.1.1.1/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/cq1yid1050qzwy629mwmy23n5bjb6clz-ghc-9.0.2/lib/ghc-9.0.2/time-1.9.3 -optl-Wl,-rpath,/nix/store/rcm62f5q81b2vhb2q0l4cnr5hdwirh7k-time-compat-1.9.6.1/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/7ijm0kqc63z28qcc0x66x8yh2kb3g2g5-time-locale-compat-0.1.1.5/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/qlj69h84x2927dwyi8wa5dhgvjkbg2r5-tls-1.5.7/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/cq1yid1050qzwy629mwmy23n5bjb6clz-ghc-9.0.2/lib/ghc-9.0.2/transformers-0.5.6.2 -optl-Wl,-rpath,/nix/store/m5rcza8m4wql2y71x57zm8pz70l9mnb3-transformers-base-0.4.6/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/7a2b6fpq8z87xq4nik73gkajxn1za9i1-transformers-compat-0.6.6/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/fcjgvmslcpkpz142nljwmr3k2rh1x016-tree-view-0.5.1/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/yqmdyn1pcb05wq04wmncs58k9s4dv752-tuple-0.3.0.2/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/cq1yid1050qzwy629mwmy23n5bjb6clz-ghc-9.0.2/lib/ghc-9.0.2/unix-2.7.2.2 -optl-Wl,-rpath,/nix/store/6rm25n07k51i7pjx68a41i71p06n4rxn-unliftio-0.2.22.0/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/nq67wxv7lhjfin0l06xpswfs5zx7jhbi-unliftio-core-0.2.0.1/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/krgr7krph1fy6l468vg4j8bil6hsiihi-unordered-containers-0.2.17.0/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/dc8syzkdyl7lq8wwnmmx6nj0fkjls8di-utf8-string-1.0.2/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/jik11kd8smbzxacir5wg3pbacwnq7p53-uuid-types-1.0.5/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/4vibgjpfcn0g7df2vn0255ym10s57zm9-vector-0.12.3.1/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/25y405islhb5nhx4vbsnilzg9g1c96qg-vector-algorithms-0.8.0.4/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/vi651ri6rhwjmjy0qq3g7rwax19911jg-vector-instances-3.4/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/gxf5k4c9p4a7d0p8j0m2n7zd5j26sa4r-void-0.7.3/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/7spqxfaq0yp7iq6bq1ymiwykyskmli5j-vty-5.33/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/sar85bv6lajlpcdx2cfn8sbimcfg3qbx-witherable-0.4.2/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/5w3q12n71811a0jzydn4vwzmmvl6r3id-word-wrap-0.5/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/hmpgx81n7g2y5yc1ld2s55lxlfqgagvc-wreq-0.5.3.3/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/fzdq5q8c1pwaysa65s5hyxm59lz6lb1d-x509-1.7.6/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/4ia8pdlbr8g9rrx0wcackhbz2kkanzh9-x509-store-1.6.9/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/79m7sgxrk4hdcfcf4mkxh2qd7hpvfpyh-x509-system-1.6.7/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/q9f04h0ygpvyfd8jjijbq787crjnw7vf-x509-validation-1.6.12/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/b0rijhg9iyng1ifzk0g87v02f5pclnqi-zlib-0.6.2.3/lib/ghc-9.0.2/x86_64-linux-ghc-9.0.2 -optl-Wl,-rpath,/nix/store/x8a6rzpikiacpq2qddzbilc6hxng0nyi-ncurses-6.3-p20220507/lib -optl-Wl,-rpath,/nix/store/3vm2kllnqx43h56sajszipvfrypifc53-libffi-3.4.2/lib -optl-Wl,-rpath,/nix/store/qdilwnvmdaj30v64w9jggnsxagh297b4-gmp-with-cxx-6.2.1/lib -optl-Wl,-rpath,/nix/store/2a7ynlva7zfb0jvhrc5n264fknwvn6mr-zlib-1.2.12-dev/lib -optl-Wl,-rpath,/nix/store/fnrnjfhamx3hf05prgd0k48gn6a5cp79-zlib-1.2.12/lib -this-unit-id hevm-0.49.0-inplace -hide-all-packages -no-auto-link-packages -no-user-package-db -package-db /home/matesoos/.cabal/store/ghc-9.0.2/package.db -package-db /home/matesoos/development/hevm/src/hevm/dist-newstyle/packagedb/ghc-9.0.2 -package-db /home/matesoos/development/hevm/src/hevm/dist-newstyle/build/x86_64-linux/ghc-9.0.2/hevm-0.49.0/package.conf.inplace -package-id Decimal-0.5.2-Ew3COBgyzUqc57wBfxLIO -package-id QuickCheck-2.14.2-CkwiS9YggJI5CYKGe0Qq0v -package-id abstract-par-0.3.3-EfoGrzx9JcdJf5mY5rKdWk -package-id aeson-2.0.3.0-9MbFrYVk7aQFAnObTEUIaK -package-id ansi-wl-pprint-0.6.9-835VH8EVuo3C92cDalOGII -package-id async-2.2.4-F5vZfkjObEM8gjqls2L63L -package-id base-4.15.1.0 -package-id base16-bytestring-1.0.2.0-C3HdBIlGH2K8zM6kjDkz2q -package-id binary-0.8.8.0 -package-id brick-0.68.1-HpF7lgbuWAwDsSDuP3X70b -package-id bytestring-0.10.12.1 -package-id cereal-0.5.8.2-JxKaHWG2W2fIK5QkQiBH1k -package-id containers-0.6.4.1 -package-id cryptonite-0.29-7OG14XRjFy21dr6LNx7IqR -package-id data-dword-0.3.2.1-9ioqKwQKnHJGmrXh2BkoL4 -package-id deepseq-1.4.5.0 -package-id directory-1.3.6.2 -package-id fgl-5.7.0.3-KzjebipthbC3IyrcEEHdbl -package-id filepath-1.4.2.1 -package-id free-5.1.7-CNEeHU9Zbjev2SkJq2jb -package-id haskeline-0.8.2 -package-id here-1.2.13-JidzgDmSnn4G6PLzgMVTol -package-id lens-5.0.1-FlT5qh4cuiG9flt3xH4uS1 -package-id lens-aeson-1.1.3-KxuLMJo8tGG3DrVJusUmO0 -package-id megaparsec-9.2.0-25SMInKVLct36uOA9t0JKX -package-id memory-0.16.0-7LCNglcAthMAhBVKSRiDKq -package-id monad-par-0.3.5-AjdnJNVnJDUHlu69taS4s8 -package-id mtl-2.2.2 -package-id multiset-0.3.4.3-DWgnERwuvj66RCtlzvCwkV -package-id operational-0.2.4.1-HyXsUTIVxjcKS63JkyVpRp -package-id optparse-generic-1.4.7-AGpb4NRChlk7IijhxtxH7M -package-id process-1.6.13.2 -package-id quickcheck-text-0.1.2.1-CNbh4lX6ej53vFwQBnqSuq -package-id regex-tdfa-1.3.1.2-2EMg5PqNADYJZwxw5Ivuyj -package-id restless-git-0.7-G0g0wVIhBz853NWrwIxqgs -package-id rosezipper-0.2-1stmfIkzCwR3vJhjXM7G3L -package-id s-cargot-0.1.4.0-CD7jIsStuu738w4bOwGt2z -package-id scientific-0.3.7.0-46LMiyGvyyd9WVxd8sKRh0 -package-id semver-range-0.2.8-B3TNcMjX3hEDhaNKRkvoEW -package-id temporary-1.3-CQxoP3fH7fFJQhI9s9pWtu -package-id text-1.2.5.0 -package-id time-1.9.3 -package-id transformers-0.5.6.2 -package-id tree-view-0.5.1-5BlZlDs37FJE3qeGqq1nK9 -package-id tuple-0.3.0.2-8Wcr5rrUUwwJ1k9lqMlSZA -package-id unordered-containers-0.2.17.0-5tsTUc3qaP8lsa0vPeGcq -package-id vector-0.12.3.1-TXkE6leK98EdYcmdk29JF -package-id vty-5.33-BUkqDvTQ2TcJPl5NKyw9W0 -package-id witherable-0.4.2-DncOBBWtDcO9rzd54gHv6Q -package-id wreq-0.5.3.3-DZuWBKV79I1DuIdJ3cm8Bl /home/matesoos/development/hevm/src/hevm/dist-newstyle/build/x86_64-linux/ghc-9.0.2/hevm-0.49.0/build/EVM.dyn_o /home/matesoos/development/hevm/src/hevm/dist-newstyle/build/x86_64-linux/ghc-9.0.2/hevm-0.49.0/build/EVM/ABI.dyn_o /home/matesoos/development/hevm/src/hevm/dist-newstyle/build/x86_64-linux/ghc-9.0.2/hevm-0.49.0/build/EVM/Concrete.dyn_o /home/matesoos/development/hevm/src/hevm/dist-newstyle/build/x86_64-linux/ghc-9.0.2/hevm-0.49.0/build/EVM/Dapp.dyn_o /home/matesoos/development/hevm/src/hevm/dist-newstyle/build/x86_64-linux/ghc-9.0.2/hevm-0.49.0/build/EVM/Debug.dyn_o /home/matesoos/development/hevm/src/hevm/dist-newstyle/build/x86_64-linux/ghc-9.0.2/hevm-0.49.0/build/EVM/Demand.dyn_o /home/matesoos/development/hevm/src/hevm/dist-newstyle/build/x86_64-linux/ghc-9.0.2/hevm-0.49.0/build/EVM/Dev.dyn_o /home/matesoos/development/hevm/src/hevm/dist-newstyle/build/x86_64-linux/ghc-9.0.2/hevm-0.49.0/build/EVM/Expr.dyn_o /home/matesoos/development/hevm/src/hevm/dist-newstyle/build/x86_64-linux/ghc-9.0.2/hevm-0.49.0/build/EVM/SMT.dyn_o /home/matesoos/development/hevm/src/hevm/dist-newstyle/build/x86_64-linux/ghc-9.0.2/hevm-0.49.0/build/EVM/Exec.dyn_o /home/matesoos/development/hevm/src/hevm/dist-newstyle/build/x86_64-linux/ghc-9.0.2/hevm-0.49.0/build/EVM/Facts.dyn_o /home/matesoos/development/hevm/src/hevm/dist-newstyle/build/x86_64-linux/ghc-9.0.2/hevm-0.49.0/build/EVM/Facts/Git.dyn_o /home/matesoos/development/hevm/src/hevm/dist-newstyle/build/x86_64-linux/ghc-9.0.2/hevm-0.49.0/build/EVM/Flatten.dyn_o /home/matesoos/development/hevm/src/hevm/dist-newstyle/build/x86_64-linux/ghc-9.0.2/hevm-0.49.0/build/EVM/Format.dyn_o /home/matesoos/development/hevm/src/hevm/dist-newstyle/build/x86_64-linux/ghc-9.0.2/hevm-0.49.0/build/EVM/Fetch.dyn_o /home/matesoos/development/hevm/src/hevm/dist-newstyle/build/x86_64-linux/ghc-9.0.2/hevm-0.49.0/build/EVM/FeeSchedule.dyn_o /home/matesoos/development/hevm/src/hevm/dist-newstyle/build/x86_64-linux/ghc-9.0.2/hevm-0.49.0/build/EVM/Hexdump.dyn_o /home/matesoos/development/hevm/src/hevm/dist-newstyle/build/x86_64-linux/ghc-9.0.2/hevm-0.49.0/build/EVM/Op.dyn_o /home/matesoos/development/hevm/src/hevm/dist-newstyle/build/x86_64-linux/ghc-9.0.2/hevm-0.49.0/build/EVM/Patricia.dyn_o /home/matesoos/development/hevm/src/hevm/dist-newstyle/build/x86_64-linux/ghc-9.0.2/hevm-0.49.0/build/EVM/Precompiled.dyn_o /home/matesoos/development/hevm/src/hevm/dist-newstyle/build/x86_64-linux/ghc-9.0.2/hevm-0.49.0/build/EVM/RLP.dyn_o /home/matesoos/development/hevm/src/hevm/dist-newstyle/build/x86_64-linux/ghc-9.0.2/hevm-0.49.0/build/EVM/Solidity.dyn_o /home/matesoos/development/hevm/src/hevm/dist-newstyle/build/x86_64-linux/ghc-9.0.2/hevm-0.49.0/build/EVM/Stepper.dyn_o /home/matesoos/development/hevm/src/hevm/dist-newstyle/build/x86_64-linux/ghc-9.0.2/hevm-0.49.0/build/EVM/StorageLayout.dyn_o /home/matesoos/development/hevm/src/hevm/dist-newstyle/build/x86_64-linux/ghc-9.0.2/hevm-0.49.0/build/EVM/SymExec.dyn_o /home/matesoos/development/hevm/src/hevm/dist-newstyle/build/x86_64-linux/ghc-9.0.2/hevm-0.49.0/build/EVM/Transaction.dyn_o /home/matesoos/development/hevm/src/hevm/dist-newstyle/build/x86_64-linux/ghc-9.0.2/hevm-0.49.0/build/EVM/TTY.dyn_o /home/matesoos/development/hevm/src/hevm/dist-newstyle/build/x86_64-linux/ghc-9.0.2/hevm-0.49.0/build/EVM/TTYCenteredList.dyn_o /home/matesoos/development/hevm/src/hevm/dist-newstyle/build/x86_64-linux/ghc-9.0.2/hevm-0.49.0/build/EVM/Types.dyn_o /home/matesoos/development/hevm/src/hevm/dist-newstyle/build/x86_64-linux/ghc-9.0.2/hevm-0.49.0/build/EVM/UnitTest.dyn_o /home/matesoos/development/hevm/src/hevm/dist-newstyle/build/x86_64-linux/ghc-9.0.2/hevm-0.49.0/build/EVM/VMTest.dyn_o /home/matesoos/development/hevm/src/hevm/dist-newstyle/build/x86_64-linux/ghc-9.0.2/hevm-0.49.0/build/Paths_hevm.dyn_o /home/matesoos/development/hevm/src/hevm/dist-newstyle/build/x86_64-linux/ghc-9.0.2/hevm-0.49.0/build/ethjet/ethjet.dyn_o /home/matesoos/development/hevm/src/hevm/dist-newstyle/build/x86_64-linux/ghc-9.0.2/hevm-0.49.0/build/ethjet/tinykeccak.dyn_o /home/matesoos/development/hevm/src/hevm/dist-newstyle/build/x86_64-linux/ghc-9.0.2/hevm-0.49.0/build/ethjet/blake2.dyn_o /home/matesoos/development/hevm/src/hevm/dist-newstyle/build/x86_64-linux/ghc-9.0.2/hevm-0.49.0/build/ethjet/ethjet-ff.dyn_o -o /home/matesoos/development/hevm/src/hevm/dist-newstyle/build/x86_64-linux/ghc-9.0.2/hevm-0.49.0/build/libHShevm-0.49.0-inplace-ghc9.0.2.so -hide-all-packages
msooseth commented 2 years ago

It now compiles statically. The nix-build command successfully completes and now fails on the tests:

9 out of 30 tests failed (1.28s)

It actually generates a static binary. When I examine the nix log, and run the cabal build from a nix-shell with the parameters that nix-build uses [1], I get a file that is statically built:

[nix-shell:~/development/hevm/src/hevm]$ ldd /home/matesoos/development/hevm/src/hevm/dist-newstyle/build/x86_64-linux/ghc-9.0.2/hevm-0.49.0/x/hevm/build/hevm/hevm
        not a dynamic executable

Hence, the tests need to be fixed, but the binary built by nix-build is actually a correct static binary. The git commit is d9b1f0ad2cca34bb18f1ac4d6733a2d2c61a7bbb. This is my current head of branch fix-static-binaries. Its change to main branch is relatively minimal.

[1]

[nix-shell:~/development/hevm/src/hevm]$ cabal build --verbose --prefix=/nix/store/j4jy1lgcasa6j8ldqjj95n47hsn9d6nx-hevm-0.49.0 --datadir=/nix/store/yk3dy0d6k3cga2d7hyzbswgllm4nhkqk-hevm-0.49.0-data/share/ghc-9.0.2 --with-gcc=gcc --package-db=/build/package.conf.d --ghc-options=-j16 +RTS -A64M -RTS --disable-split-objs --enable-library-profiling --profiling-detail=exported-functions --disable-profiling --enable-shared --disable-coverage --enable-static --disable-executable-dynamic --enable-tests --disable-benchmarks --enable-library-vanilla --disable-library-for-ghci --ghc-option=-split-sections --ghc-option=-O2 --enable-static --enable-executable-static --extra-lib-dirs=/nix/store/amw8kvyspgwhyxa3dwcixcz1ajn142d1-gmp-with-cxx-6.2.1/lib --extra-lib-dirs=/nix/store/lxpdbaazqd2s79jx6lngr8nak2rjdaq1-glibc-2.34-210/lib --extra-lib-dirs=/nix/store/cw7x57ddnpm5z40dal48wvjl2yfvssi6-glibc-2.34-210-static/lib --extra-lib-dirs=/nix/store/ba51biiy7dasc2ha2q11yg768hsjda29-secp256k1-unstable-2022-02-06/lib --extra-lib-dirs=/nix/store/p7f1hq8zhhaamxqnwzc8p383cwgb8ii7-libff-1.0.0/lib --extra-lib-dirs=/nix/store/chip3lk3v0fsb2mgzsd8sgk03xjvybxd-ncurses-6.3-p20220507/lib --extra-lib-dirs=/nix/store/hzw51k7zn7ng59h4vdpqck08d0kh4279-zlib-1.2.12-static/lib --extra-lib-dirs=/nix/store/r2c05fab2b4pf1g1r2yyp3qnmz8bg3j3-libffi-3.4.2/lib --extra-lib-dirs=/nix/store/x8a6rzpikiacpq2qddzbilc6hxng0nyi-ncurses-6.3-p20220507/lib --extra-lib-dirs=/nix/store/3vm2kllnqx43h56sajszipvfrypifc53-libffi-3.4.2/lib --extra-lib-dirs=/nix/store/qdilwnvmdaj30v64w9jggnsxagh297b4-gmp-with-cxx-6.2.1/lib --extra-include-dirs=/nix/store/znn7frpgbrhgi4z7kch11cwhhvkwmqh1-libff-0.2.1/include --extra-lib-dirs=/nix/store/znn7frpgbrhgi4z7kch11cwhhvkwmqh1-libff-0.2.1/lib --extra-include-dirs=/nix/store/l15cv8xkcgzihi6lxqw45dcrf7zg28n1-secp256k1-unstable-2022-02-06/include --extra-lib-dirs=/nix/store/l15cv8xkcgzihi6lxqw45dcrf7zg28n1-secp256k1-unstable-2022-02-06/lib --extra-include-dirs=/nix/store/17mp3ikda4hss2mxmr0jqz5mylqhbgvc-z3-4.8.15-dev/include --extra-lib-dirs=/nix/store/wp8mmmn445da7k0z3196ihyjjc7x09fw-python2.7-setuptools-44.0.0/lib --extra-include-dirs=/nix/store/jfy58aylcmi3fxf3jvjxv9sdvw0wj34m-python-2.7.18/include --extra-lib-dirs=/nix/store/jfy58aylcmi3fxf3jvjxv9sdvw0wj34m-python-2.7.18/lib --extra-lib-dirs=/nix/store/ppwqis1gzi735g2q201i4zl1ic7sd0ri-z3-4.8.15-lib/lib --extra-include-dirs=/nix/store/vb8d7pldi3vn1sh6nnrp390h0d0w042c-cvc4-1.8/include --extra-lib-dirs=/nix/store/vb8d7pldi3vn1sh6nnrp390h0d0w042c-cvc4-1.8/lib
msooseth commented 2 years ago

@d-xo Let me know how you'd like to integrate the diff. It's quite minimal. I think I may be able to make it more minimal, but maybe it's fine as-is? What do you think? I had to edit the default libsecp256k1.nix because I had to add + "--enable-static" -- and it was hard(impossible?) to add it without editing, because it's inside stdenv.mkDerivation. Apparently there is some way of changing that through adapters, but that sounded very complicated.... maybe you know how to it? Otherwise, I don't think it's too bad as-is?

Mate

diff --git a/flake.nix b/flake.nix
index e41685cf..47e87356 100644
--- a/flake.nix
+++ b/flake.nix
@@ -22,6 +22,7 @@
         # --- packages ----

         packages = flake-utils.lib.flattenTree {
+          libsecp256k1 = pkgs.callPackage (import ./nix/libsecp256k1.nix) {};
           libff = pkgs.callPackage (import ./nix/libff.nix) {};
           hevm = pkgs.haskell.lib.dontHaddock ((
             pkgs.haskellPackages.callCabal2nix "hevm" (./src/hevm) {
@@ -31,7 +32,6 @@
               inherit (pkgs) secp256k1;
             }
           ).overrideAttrs (attrs: {
-            hardeningDisable = ["pic"];
             postInstall = ''
                 wrapProgram $out/bin/hevm --prefix PATH \
                   : "${pkgs.lib.makeBinPath (with pkgs; [bash coreutils git solc])}"
@@ -46,10 +46,13 @@
             nativeBuildInputs = attrs.nativeBuildInputs ++ [pkgs.makeWrapper];
             configureFlags = attrs.configureFlags ++ [
                 "--ghc-option=-O2"
+                "--enable-static"
                 "--enable-executable-static"
                 "--extra-lib-dirs=${pkgs.gmp.override { withStatic = true; }}/lib"
+                "--extra-lib-dirs=${pkgs.glibc}/lib"
                 "--extra-lib-dirs=${pkgs.glibc.static}/lib"
-                "--extra-lib-dirs=${packages.libff.override { enableStatic = true; }}/lib"
+                "--extra-lib-dirs=${packages.libsecp256k1}/lib"
+                "--extra-lib-dirs=${packages.libff}/lib"
                 "--extra-lib-dirs=${pkgs.ncurses.override {enableStatic = true; }}/lib"
                 "--extra-lib-dirs=${pkgs.zlib.static}/lib"
                 "--extra-lib-dirs=${pkgs.libffi.overrideAttrs (old: { dontDisableStatic = true; })}/lib"
diff --git a/nix/libff.nix b/nix/libff.nix
index 37f02a8b..a17c8c09 100644
--- a/nix/libff.nix
+++ b/nix/libff.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, cmake, boost, gmp, openssl, pkg-config, enableStatic ? false }:
+{ lib, stdenv, fetchFromGitHub, cmake, boost, gmp, openssl, pkg-config, enableStatic ? true }:

 stdenv.mkDerivation rec {
   pname = "libff";
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
     fetchSubmodules = true;
   };

-  cmakeFlags = [ "-DWITH_PROCPS=Off" ];
+  cmakeFlags = [ "-DWITH_PROCPS=OFF -DBUILD_SHARED_LIBS=OFF" ];

   # CMake is hardcoded to always build static library which causes linker
   # failure for Haskell applications depending on haskellPackages.hevm on macOS.
diff --git a/nix/libsecp256k1.nix b/nix/libsecp256k1.nix
new file mode 100644
index 00000000..92e84ae3
--- /dev/null
+++ b/nix/libsecp256k1.nix
@@ -0,0 +1,48 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, autoreconfHook
+}:
+
+stdenv.mkDerivation {
+  pname = "secp256k1";
+
+  version = "unstable-2022-02-06";
+
+  src = fetchFromGitHub {
+    owner = "bitcoin-core";
+    repo = "secp256k1";
+    rev = "5dcc6f8dbdb1850570919fc9942d22f728dbc0af";
+    sha256 = "x9qG2S6tBSRseWaFIN9N2fRpY1vkv8idT3d3rfJnmaU=";
+  };
+
+  nativeBuildInputs = [ autoreconfHook ];
+
+  configureFlags = [
+    "--enable-benchmark=no"
+    "--enable-exhaustive-tests=no"
+    "--enable-experimental"
+    "--enable-module-ecdh"
+    "--enable-module-recovery"
+    "--enable-module-schnorrsig"
+    "--enable-tests=yes"
+    "--enable-static"
+  ];
+
+  doCheck = true;
+
+  checkPhase = "./tests";
+
+  meta = with lib; {
+    description = "Optimized C library for EC operations on curve secp256k1";
+    longDescription = ''
+      Optimized C library for EC operations on curve secp256k1. Part of
+      Bitcoin Core. This library is a work in progress and is being used
+      to research best practices. Use at your own risk.
+    '';
+    homepage = "https://github.com/bitcoin-core/secp256k1";
+    license = with licenses; [ mit ];
+    maintainers = with maintainers; [ ];
+    platforms = with platforms; all;
+  };
+}
d-xo commented 2 years ago

That's awesome! Just open a PR with the change and we can merge it in ☺️

msooseth commented 2 years ago

Created as PR #17

msooseth commented 2 years ago

Closed as part of PR #17.