Open likuilin opened 1 year ago
Using the test program whose source is here https://linux.die.net/man/2/getdents64 to get the raw readdir order of ~/.cargo/git/checkouts/secretnetwork-321ca7ab73a61848/a3edd66
, I can confirm that seed-service
comes before cosmwasm
on my machine (non-working), but cosmwasm
comes before seed-service
in the Docker container on my machine (working).
Thanks. This is probably due to lockfiles getting messed up somewhere. I'll update the issue when this is resolved
I'm trying to build
tendermint_enclave.signed.so
from tm-secret-enclave myself (yes I know the MRSIGNER will be different so it won't work on-chain), and am running into this error:This error happens when building on my machine, but I was able to get the enclave to build successfully using the Dockerfile, so I was able to bisect what the exact issue is by following the xargo execs.
The root cause is that this repo has two
enclave-ffi-types
crates. On my machine, Cargo finds the one in/seed-service/src/enclaves/ffi-types
rather than the correct one in/cosmwasm/enclaves/ffi-types
. Both are namedenclave-ffi-types
with version0.1.0
, but the former (older?) one exportsENCRYPTED_SEED_SIZE
, whereas the latter one exportsINPUT_ENCRYPTED_SEED_SIZE
andOUTPUT_ENCRYPTED_SEED_SIZE
.There's no way to specify the correct one with a local change to
Cargo.toml
in my checkout of tm-secret-enclave since they have the same version. I'm not sure how best to resolve this issue, but it seems like a clear bug that this repo should not have two crates that are the same name and version, since Cargo will pick one arbitrarily in this case.