Bug#1070872: libm.a lost fmod + fmodf on i386 + m68k
Package: libc6-dev
Version: 2.38-7
Severity: serious
Tags: ftbfs
Control: affects -1 src:zsh
https://buildd.debian.org/status/logs.php?pkg=zsh&ver=5.9-6%2Bb1
...
gcc -static -o zsh main.o `cat stamp-modobjs` -lpcre2-8 -lgdbm -lcap -lncursesw -ltinfo -ltinfo -lrt -lm -lc
...
./obj-static/Src/../../Src/math.c:1260:(.text+0x1d8e): undefined reference to `fmod'
collect2: error: ld returned 1 exit status
make[3]: *** [Makefile:228: zsh] Error 1
$ objdump -t /usr/lib/i386-linux-gnu/libm.a | grep fmod
w_fmodl_compat.o: file format elf32-i386
w_fmod_compat.o: file format elf32-i386
w_fmodf_compat.o: file format elf32-i386
e_fmodl.o: file format elf32-i386
00000000 g F .text 00000013 __ieee754_fmodl
w_fmodl.o: file format elf32-i386
00000000 g F .text 00000085 __fmodl
00000000 *UND* 00000000 __ieee754_fmodl
00000000 w F .text 00000085 fmodf64x
00000000 w F .text 00000085 fmodl
e_fmod.o: file format elf32-i386
00000000 g F .text 00000013 __ieee754_fmod
w_fmod.o: file format elf32-i386
e_fmodf.o: file format elf32-i386
00000000 g F .text 00000013 __ieee754_fmodf
w_fmodf.o: file format elf32-i386
e_fmodf128.o: file format elf32-i386
00000000 g F .text 00000c9b __ieee754_fmodf128
00000000 *UND* 00000000 __ieee754_fmodf128
00000000 *UND* 00000000 __ieee754_fmodf128
w_fmodf128.o: file format elf32-i386
00000000 g F .text 00000237 __fmodf128
00000000 *UND* 00000000 __ieee754_fmodf128
00000000 w F .text 00000237 fmodf128
$
With 2.37-13 this is instead:
$ objdump -t /usr/lib/i386-linux-gnu/libm.a | grep fmod
w_fmodl_compat.o: file format elf32-i386
w_fmod_compat.o: file format elf32-i386
w_fmodf_compat.o: file format elf32-i386
e_fmodl.o: file format elf32-i386
00000000 g F .text 00000013 __ieee754_fmodl
w_fmodl.o: file format elf32-i386
00000000 g F .text 00000085 __fmodl
00000000 *UND* 00000000 __ieee754_fmodl
00000000 w F .text 00000085 fmodf64x
00000000 w F .text 00000085 fmodl
e_fmod.o: file format elf32-i386
00000000 g F .text 00000013 __ieee754_fmod
w_fmod.o: file format elf32-i386
00000000 g F .text 0000006b __fmod
00000000 *UND* 00000000 __ieee754_fmod
00000000 w F .text 0000006b fmodf32x
00000000 w F .text 0000006b fmodf64
00000000 w F .text 0000006b fmod
e_fmodf.o: file format elf32-i386
00000000 g F .text 00000013 __ieee754_fmodf
w_fmodf.o: file format elf32-i386
00000000 g F .text 00000063 __fmodf
00000000 *UND* 00000000 __ieee754_fmodf
00000000 w F .text 00000063 fmodf32
00000000 w F .text 00000063 fmodf
e_fmodf128.o: file format elf32-i386
00000000 g F .text 00000cc5 __ieee754_fmodf128
00000000 *UND* 00000000 __ieee754_fmodf128
00000000 *UND* 00000000 __ieee754_fmodf128
w_fmodf128.o: file format elf32-i386
00000000 g F .text 00000237 __fmodf128
00000000 *UND* 00000000 __ieee754_fmodf128
00000000 w F .text 00000237 fmodf128
$
Reply to: