!ayCRiZriCVtuCUpeLp:nixos.org

Nix Cross Compiling

581 Members
129 Servers

Load older messages


SenderMessageTime
9 Jan 2025
@sananatheskenana:matrix.orglzcuntI think gcc needs --disable-hosted-libstdcxx when building for nolibc which should make libstdcxx freestanding and hopefully make everything happy18:28:54
@greg:thehellings.comGreg Hellings

Looks like pkgsCross.mingwW64.icu is broken currently. I'm getting a handful of errors that look similar to this one:

/nix/store/zc3w94hsr3y61af27x3110xhqabxfpcv-x86_64-w64-mingw32-gcc-14-20241116/include/c++/14-20241116/limits:2100:30: error: exponent has no digits
 2100 |         return __extension__ 0x1.0p-16382Q;
      |                              ^~~~~~
/nix/store/zc3w94hsr3y61af27x3110xhqabxfpcv-x86_64-w64-mingw32-gcc-14-20241116/include/c++/14-20241116/limits:2114:30: error: exponent has no digits
 2114 |         return __extension__ 0x1.ffffffffffffffffffffffffffffp+16383Q;
      |                              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
21:44:48
@greg:thehellings.comGreg HellingsBased on where the error is coming from, other packages might be affected, as it appears to be coming from the bundled C++ headers21:45:42
@greg:thehellings.comGreg HellingsSeems like this is the same error: https://github.com/NixOS/nixpkgs/pull/261341 - gonna see if I can get a similar fix in for ICU21:48:02
@greg:thehellings.comGreg HellingsOK, so the error is already fixed in ICU 76. But the default ICU across nixpkgs is still ICU 74. Would it be better to try and develop a patch for ICU74 to address this? The change is relatively simple. Or to change the default to ICU 76 for MinGW builds?22:42:02
@k900:0upti.meK900Didn't we bump ICU this staging cycle?22:45:53
@k900:0upti.meK900 @emily 22:45:55
@greg:thehellings.comGreg Hellings 🤷 Looking at master right now it says icu = icu74; 22:46:19
@k900:0upti.meK900Look at staging22:46:27
@k900:0upti.meK900* Look at staging-next22:46:30
@greg:thehellings.comGreg Hellings
  icuReal = icu74;
  icu = if stdenv.hostPlatform.isDarwin then darwin.ICU else icuReal;
22:48:00
@greg:thehellings.comGreg Hellings That's different from master where it is just icu = icu74;, but still not revving it to 76 22:48:22
@k900:0upti.meK900Oh OK22:49:02
@k900:0upti.meK900Then I guess we'll have to update it eventually22:49:15
@k900:0upti.meK900I guess it can be done conditionally on mingw but I'd rather just update it everywhere22:49:27
@greg:thehellings.comGreg HellingsUpdating it everywhere sounds like a job for staging next, and not me randomly proposing a change to master. 😆22:49:59
@greg:thehellings.comGreg HellingsCurrently testing the ucrt Windows build to see if it is limited to MinGW or if it's all Windows. The way I understand the bug and the code I'm seeing it should be MinGW specific22:50:36
@greg:thehellings.comGreg HellingsYeah, ucrt with CLang builds fine with ICU7422:50:53
@k900:0upti.meK900
In reply to@greg:thehellings.com
Updating it everywhere sounds like a job for staging next, and not me randomly proposing a change to master. 😆
Yes
22:51:13
@greg:thehellings.comGreg HellingsWait, no, that was me building ucrt with icu76. Trying again with 7422:51:32
@greg:thehellings.comGreg HellingsOK, yeah, this is limited to only failing on MinGW as I thought. The naughty code is behind ifdef's for MinGW, so that's expected22:53:09
@greg:thehellings.comGreg HellingsShould I prepare a limited PR for master to just rev it for mingw? Or is staging updating it everywhere in the near future?22:54:49
@k900:0upti.meK900
In reply to@greg:thehellings.com
Should I prepare a limited PR for master to just rev it for mingw? Or is staging updating it everywhere in the near future?
I would prefer the latter
22:58:32
@k900:0upti.meK900Any sort of "this obscure platform uses this other thing instead of the normal thing" conditionals explode given enough time22:58:52
@greg:thehellings.comGreg HellingsAgreed. I don't know about calling Windows obscure, but it's definitely a corner case for nixpkgs23:00:42
@k900:0upti.meK900Windows is not obscure 23:06:02
@k900:0upti.meK900MinGW is, extremely 23:06:07
10 Jan 2025
@emilazy:matrix.orgemilydon't we use MinGW for all Windows cross00:59:24
@k900:0upti.meK900
In reply to @emilazy:matrix.org
don't we use MinGW for all Windows cross
Yes, which we have very little of
07:14:40
@greg:thehellings.comGreg HellingsYes, but only with gcc on some of them. And the build failure is mingw+gcc-14+ specific. For ucrt targets we seem to use clang instead and that did not manifest the failure15:33:12

Show newer messages


Back to Room ListRoom Version: 6