!ayCRiZriCVtuCUpeLp:nixos.org

Nix Cross Compiling

582 Members
131 Servers

Load older messages


SenderMessageTime
19 Aug 2021
@qyliss:fairydust.spaceAlyssa Rossoh that's neat10:45:20
@qyliss:fairydust.spaceAlyssa RossI just have the command line arguments for qemu, crosvm, and cloud-hypervisor burned into my brain10:45:35
@mic92:nixos.devMic92Is crosvm still your favorite?10:45:59
@qyliss:fairydust.spaceAlyssa Rosscloud-hypervisor is my favourite now10:46:09
@sandro:supersandro.deSandro
In reply to @mic92:nixos.dev
qyliss: have you seen https://github.com/astro/microvm.nix already?
Astro has some problems with the kernel where I couldn't help him. Did he ask you already?
11:08:15
@mic92:nixos.devMic92no11:08:34
@mic92:nixos.devMic92we chatted a bit yesterday so11:08:58
@sandro:supersandro.deSandroah okay. I think it was something with network throughput in the microvm kernel or something. Can't remember11:13:13
@mic92:nixos.devMic92If one wants to get decent throughput with VMs than SR-IOV is the way to go11:16:29
@mic92:nixos.devMic92Used 10Gbit/s/40Gbit/s NICs became quite affordable now and support this11:17:41
@symphorien:xlumurb.eusymphorienI'm trying to cross compile ocaml with host=build=x86 and target=musl (for pkgsStatic) and when trying to link the stdlib ocaml tries to use the prefixed compiler for target, which is not in $PATH18:56:25
@symphorien:xlumurb.eusymphorienhow do I add it to the $PATH ?18:56:38
@sternenseemann:systemli.orgsterni My intuition would be that you need pkgsBuildTarget.targetPackages.stdenv.cc 18:57:55
@symphorien:xlumurb.eusymphoriendo I add it to the path with export or in buildInputs or ???18:58:49
@sternenseemann:systemli.orgsterniwould belong in nativeBuildInputs18:59:17
@symphorien:xlumurb.eusymphorienah right, for $PATH18:59:33
@sternenseemann:systemli.orgsterniI'd recommend though that you try to make a ocaml cross compiler for something which isn't the same arch as you are building on first18:59:59
@sternenseemann:systemli.orgsternibecause implementing cross compilation with pkgsStatic lets you get away with things you wouldn't in that case19:00:28
@sternenseemann:systemli.orgsternifor example you can run something from the target platform in the case of pkgsStatic19:00:47
@symphorien:xlumurb.eusymphorienwell for now I don't even get away with pkgsStatic so...19:01:02
@symphorien:xlumurb.eusymphorien why the targetPackages in pkgsBuildTarget.targetPackages.stdenv.cc ? 19:01:33
@qyliss:fairydust.spaceAlyssa Rossdoing it for a different architecture can make it much more obvious why things aren't working19:01:44
@symphorien:xlumurb.eusymphorienalso ocaml is not designed for cross at all so I suspect pkgsStatic is the only case that will work at all19:02:02
@symphorien:xlumurb.eusymphorienthe configure script only considers one toolchain19:02:20
@sternenseemann:systemli.orgsterni
In reply to @symphorien:xlumurb.eu
why the targetPackages in pkgsBuildTarget.targetPackages.stdenv.cc ?
pkgsBuildTarget.stdenv.cc is build -> build since stdenv is always the compiler used to build the package set
19:06:55
@sternenseemann:systemli.orgsterniso you need to use targetPackages if you want to get the “default” compiler of that package set19:07:13
@qyliss:fairydust.spaceAlyssa Ross that's the same as just nativeBuildInputs = [ targetPackages.stdenv.cc ]; when using callPackage though, right? thanks to splicing? 19:08:33
@symphorien:xlumurb.eusymphorienweird because the manual says targetPackages is a synonym for pkgsTargetTarget so the cc from targetPackage should never be cross ???19:08:35
@symphorien:xlumurb.eusymphorienah you said "cc is the cc used to build the set"19:09:30
@symphorien:xlumurb.eusymphorienso cc does not really "belong" to the set19:09:39

Show newer messages


Back to Room ListRoom Version: 6