!ayCRiZriCVtuCUpeLp:nixos.org

Nix Cross Compiling

573 Members
125 Servers

Load older messages


SenderMessageTime
14 Jul 2025
@emilazy:matrix.orgemily but the PKG_CONFIG_PATH thing is at least not-as-wrong hopefully 01:25:55
@quadradical:federated.nexusQuadRadical (Ping)I should probably do that for now then, right?01:26:09
@emilazy:matrix.orgemilyit's at least less confusing imo01:26:24
@emilazy:matrix.orgemily since it does not involve duplicating udev 01:26:29
@quadradical:federated.nexusQuadRadical (Ping)ill do it now01:26:31
@quadradical:federated.nexusQuadRadical (Ping)thanks!01:26:40
@artturin:matrix.orgArtturinCould be something wonky here https://github.com/stratis-storage/devicemapper-rs/blob/59e04984047cba0be7ea743c826bf825ddc7989e/devicemapper-rs-sys/build.rs#L3001:33:30
@emilazy:matrix.orgemilyso apparently they only use it for includes and not libraries01:34:06
@emilazy:matrix.orgemily and someone added the disable_cargo_metadata feature to avoid the pkg_config crate telling Cargo how to link with the library because they were having cross issues 01:34:25
@emilazy:matrix.orgemily but AFAICT the pkg_config crate is meant to handle cross-compilation properly, so at most we should need a "useless" lvm2 dep for build platform 01:34:44
@emilazy:matrix.orgemilyit will read target-suffixed env variables01:34:55
@emilazy:matrix.orgemily otoh we also PKG_CONFIG_ALLOW_CROSS = if stdenv.buildPlatform != stdenv.hostPlatform then 1 else 0; which apparently disables its logic for detecting when you're doing cross right 01:35:15
@emilazy:matrix.orgemily so I rather suspect we are failing to set the variables it expects and our Rust + pkg-config + cross story is just kind of broken in general right now? 01:35:42
@emilazy:matrix.orgemily I am not entirely sure how pkg-config cross in Nixpkgs in general is meant to work though. (e.g. do you want a separate pkg-config dep for each platform you need to use it on?) 01:36:27
@emilazy:matrix.orgemily(use it "for" I suppose I should say)01:41:22
@quadradical:federated.nexusQuadRadical (Ping)btw i changed it to use the other on e01:41:33
@quadradical:federated.nexusQuadRadical (Ping)* btw i changed it to use the other one01:41:44
@quadradical:federated.nexusQuadRadical (Ping)i dont know what the proper solution nis though01:42:04
@colemickens:matrix.orgcolemickens 🏳️‍🌈(the latest version doesn't work for me, native or cross, from what I can tell)05:43:18
@quadradical:federated.nexusQuadRadical (Ping) You're talking about my PR or? 13:26:45
@quadradical:federated.nexusQuadRadical (Ping)It builds fine for me13:26:50
@quadradical:federated.nexusQuadRadical (Ping)Unless you mean it doesn't work properly but does build13:27:03
@quadradical:federated.nexusQuadRadical (Ping)oh wait youre right13:30:26
@quadradical:federated.nexusQuadRadical (Ping) setting PKG_CONFIG_PATH appears to make it only build with cross 13:30:52
@quadradical:federated.nexusQuadRadical (Ping)yeah it fails about udev otherwise13:35:10
@quadradical:federated.nexusQuadRadical (Ping)i think the other way was better then13:35:15
@emilazy:matrix.orgemily that is probably because of our dodgy PKG_CONFIG_ALLOW_CROSS setting 13:46:49
@emilazy:matrix.orgemily the other way is really not mergeable, we do not want a udev dependency that is not even used 13:47:15
@emilazy:matrix.orgemily it's just a hack around only having the wrong-platform pkg-config 13:47:22
@quadradical:federated.nexusQuadRadical (Ping)oh ok13:47:35

Show newer messages


Back to Room ListRoom Version: 6