| 2 Jul 2026 |
emily | yeah, I mean… what's actually up :) | 14:07:53 |
emily | since it is getting gmp as a build input | 14:07:59 |
emily | I'm looking now | 14:08:01 |
hexa | hah, no :D | 14:08:05 |
hexa | I can quickly try to repro outside build infra | 14:08:35 |
hexa | repros on community builder | 14:09:23 |
emily | require gmp gmp.h mpz_export -lgmp
check_lib gmp gmp.h mpz_export -lgmp
check_func_headers gmp.h mpz_export -lgmp
test_ld cc -lgmp
test_cc
BEGIN /nix/var/nix/b/2jhhaiigz9c8m64wblda3zpr95/ffconf.tcUHOpjW/test.c
1 #include <gmp.h>
2 #include <stdint.h>
3 long check_mpz_export(void) { return (long) mpz_export; }
4 int main(void) { int ret = 0;
5 ret |= ((intptr_t)check_mpz_export) & 0xFFFF;
6 return ret; }
END /nix/var/nix/b/2jhhaiigz9c8m64wblda3zpr95/ffconf.tcUHOpjW/test.c
clang -D_ISOC11_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -I$(SRC_PATH)/compat/dispatch_semaphore -DPIC -std=c17 -Werror=partial-availability -fno-common -fomit-frame-pointer -fPIC -pthread -I/nix/store/mvi0pf50rpq1qcwv8alh9hsrsa86xwxj-zlib-1.3.2-dev/include -c -o /nix/var/nix/b/2jhhaiigz9c8m64wblda3zpr95/ffconf.tcUHOpjW/test.o /nix/var/nix/b/2jhhaiigz9c8m64wblda3zpr95/ffconf.tcUHOpjW/test.c
/nix/var/nix/b/2jhhaiigz9c8m64wblda3zpr95/ffconf.tcUHOpjW/test.c:1:10: fatal error: 'gmp.h' file not found
1 | #include <gmp.h>
| ^~~~~~~
1 error generated.
ERROR: gmp not found
| 14:09:40 |
emily | that sure does look like gmp.h isn't present | 14:09:50 |
emily | and yet | 14:10:00 |
emily | /nix/store/z7qzk6341cl0rdxa3p040fd35gxwa77w-gmp-with-cxx-6.3.0-dev is in build inputs, and /nix/store/z7qzk6341cl0rdxa3p040fd35gxwa77w-gmp-with-cxx-6.3.0-dev/include/gmp.h exists | 14:10:08 |
emily | so what the hell | 14:10:14 |
hexa | yeah | 14:10:20 |
emily | uhhh | 14:18:00 |
emily | it seems to be using an unwrapped clang | 14:18:04 |
emily | oh. | 14:18:07 |
emily | this is going to be Randy's fix isn't it | 14:18:10 |
emily | https://github.com/NixOS/nixpkgs/pull/531960 | 14:18:29 |
emily | tbh this seems like it'll break compiling FFmpeg with LLVM on Linux too | 14:18:49 |
emily | Sergei Zimmerman (xokdvium): ^ | 14:19:04 |
emily | https://github.com/NixOS/nixpkgs/pull/518519/changes/817b0e1338faca6deebeb9fca8beeef8409dbeea clobbers wrapped clang in FFmpeg build env | 14:19:25 |
emily | will merge Randy's PR for now but that probably deserves a proper fix | 14:19:41 |
emily | ok, hit the button. next eval should pick up lots of Darwin work. | 14:20:35 |
Sergei Zimmerman (xokdvium) | Right, yeah. Ideally it we could specify the cuda compiler directly without the configure script finding it | 14:22:12 |
emily | we could also potentially tell FFmpeg to use cc instead of clang | 14:22:34 |
emily | we explicitly --cc=clang --cxx=clang++ | 14:22:40 |
emily | not sure if that's necessary | 14:22:43 |
emily | and if everything even consistently uses it | 14:22:47 |
emily | ++ optionals stdenv.cc.isClang [
"--cc=${stdenv.cc.targetPrefix}clang"
"--cxx=${stdenv.cc.targetPrefix}clang++"
]
| 14:23:01 |
emily | maybe it does some dumb sniffing | 14:23:08 |
Sergei Zimmerman (xokdvium) | Yeah the cuda compiler is found separately iirc | 14:23:23 |