Subject: Issue compiling diffutils-3.12 during LFS cross-compilation (help2man error)

From: 吴浩杰 <[email-masked]>
Date: Sun, 10 Aug 2025 18:14:17 +0800 (CST)

Dear diffutils developers,
I am currently building Linux From Scratch and cross-compiling temporary tools. When compiling diffutils-3.12 with the following script:
./configure --prefix=/usr \
            --host=$LFS_TGT \
            gl_cv_func_strcasecmp_works=y \
            --build=$(./build-aux/config.guess) \
&& make -j$(nproc) \
&& make DESTDIR=$LFS install

I encounter these errors during make:

help2man: can't get `--help' info from sdiff
Try `--no-discard-stderr' if option outputs to stderr
help2man: can't get `--help' info from cmp
Try `--no-discard-stderr' if option outputs to stderr
help2man: can't get `--help' info from diff
Try `--no-discard-stderr' if option outputs to stderr
make[1]: *** [Makefile:2574: sdiff.1] Error 1
make[1]: *** Waiting for unfinished jobs....
make[1]: *** [Makefile:2574: cmp.1] Error 1
make[1]: *** [Makefile:2574: diff.1] Error 1
make[1]: Leaving directory '/mnt/lfs/sources/diffutils-3.12/man'
make: *** [Makefile:2437: all-recursive] Error 1

My host system is Ubuntu 22.04 with gcc 11.4.0. According to the Linux From Scratch book, this problem should not occur, so I am unsure why it happens on my system.

I have tried several methods to bypass or fix this issue, including:

make HELP2MAN=: or make HELP2MAN=true 

Running make with HELP2MAN="help2man --no-discard-stderr"

Exporting HELP2MAN=: or make HELP2MAN=true  shell environment

None of these attempts resolved the problem.

Could you please advise:

Why this problem might be occurring in my environment?

What is the recommended way to bypass or fix the help2man step during the build?

Thank you very much for your time and assistance.

Best regards,