SquashFS not compiling due to missing __udivmoddi4 (x86)

Hi,
I'm trying to build Squashfs for u-boot for x86.
Looks like we are missing some libgcc helper function.
ld.bfd: fs/squashfs/sqfs.o: in function `sqfs_read': /home/sean/development/siemens/u-boot/fs/squashfs/sqfs.c:1443: undefined reference to `__udivmoddi4' ld.bfd: /home/sean/development/siemens/u-boot/fs/squashfs/sqfs.c:1521: undefined reference to `__udivmoddi4'
I can fix this by adding the function from arch/arc/lib/libgcc2.c to arch/x86/lib/div64.c, but I'm not sure it's the right way to do it :)
Any hints?
/Sean

On Mon, May 02, 2022 at 12:39:32PM +0200, Sean Nyekjaer wrote:
Hi,
I'm trying to build Squashfs for u-boot for x86.
Looks like we are missing some libgcc helper function.
ld.bfd: fs/squashfs/sqfs.o: in function `sqfs_read': /home/sean/development/siemens/u-boot/fs/squashfs/sqfs.c:1443: undefined reference to `__udivmoddi4' ld.bfd: /home/sean/development/siemens/u-boot/fs/squashfs/sqfs.c:1521: undefined reference to `__udivmoddi4'
I can fix this by adding the function from arch/arc/lib/libgcc2.c to arch/x86/lib/div64.c, but I'm not sure it's the right way to do it :)
Any hints?
That likely means there's some 64 bit math going on which should be using lldiv or do_div or something like that, instead.
participants (2)
-
Sean Nyekjaer
-
Tom Rini