Closed TheLortex closed 2 years ago
Thanks for the report. Do you have knowledge on how to fix it? I lack any dune insight, as well as cross-compilation setup insights.
I ran into this issue from the linked mirage cross compilation post. It seems like the duniverse that now gets created when you follow those instructions expects dune 3.0 or newer, using features like (using ctypes 0.1)
. So cross compilation is no longer working from Linux x86 -> ARM64.
Is anyone able to point to how I could get started fixing the cross compilation issue with this library?
@tmcgilchrist I have no clue how to fix this, and can't find anything in the dune changes that point to fixes in that area. Maybe @TheLortex has some idea? Maybe @dinosaure encountered such issues with digestif as well?
So I have re-tested the tutorial with dune 3.2.0
it worked fine. @tmcgilchrist if you can confirm that it works fine with the latest version of dune, I suggest closing the issue for now and updating the blog post.
Thanks for your investigation @TheLortex. AFAICT there's not much to do from the mirage-crypto side.
With Dune 2, cross-compiling
mirage-crypto
from x86 to aarch64 was working fine.With Dune 3, it fails with the following error:
It looks like x86 CPU-specific optimisations are enabled even if we are cross-compiling for arm64. So what happens is that the configurator is configuring for the host instead of the target.