-
Notifications
You must be signed in to change notification settings - Fork 31
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
cross compilation example using flakes #620
Comments
Does this example have what you’re looking for? mseri/doi2bib#19 |
Thank you! That did get me much further along. I was getting the below error as I had not overridden the
|
I was able to get mus64 building, but for arm I get
|
Looks like I can use qemu or this idea https://discourse.nixos.org/t/how-to-cross-compile-kernel-for-aarch64-on-x86-host-without-qemu/16970 to allow my local nixos to support the arch. That brings me to the next issue, which is that I actually need 32-bit arm, which would be armv7l-hf, which isn't available in the overlays. I tried adding it to the existing overlay, but I assume it won't be that easy and might require other changes to support. |
I was able to get aarch64 working by wrapping the |
I was able to get a minimum static arm7l binary built, but it now fails on a ppx that uess dlopen.
I can put up a repo with my experiment and maybe open a separate issue for armv7l support and this other issue, if you'd prefer? |
I was able to get a minimum static arm7l binary built, but it now fails on a ppx that uses dlopen.
I can put up a repo with my experiment and maybe open a separate issue for armv7l support and this other issue, if you'd prefer? |
I'd recommend revisiting cross compilation now. there have been some nice improvements in dune / overlays that should make your experience a bit better. |
Could you also add cross-compilation instructions for total nix newcomers? Looking at CI I discovered |
I'm trying to figure out an approach to using cross compilation in a flake, where there would be a client and a server, the client being run on a raspberry pi, and the server on x86 linux. I'm unsure about the project structure and workflow for that, whether the cross overlay is meant to enable dune to support cross compilation, a system flag is meant to be passed to
nix build
, or a separate packages should be defined for each system, where each package callsbuildDunePackage
with the appropriate cross or hostocamlPackages
. I'm also not sure about where tools like dune should be provided to enable the cross compilation. Is there an example that does something like along these lines?The text was updated successfully, but these errors were encountered: