GNU bug report logs -
#72235
build failure on FreeBSD and NetBSD
Previous Next
Reported by: Bruno Haible <bruno <at> clisp.org>
Date: Sun, 21 Jul 2024 18:14:02 UTC
Severity: normal
Done: Jim Meyering <jim <at> meyering.net>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
[Message part 1 (text/plain, inline)]
Your bug report
#72235: build failure on FreeBSD and NetBSD
which was filed against the diffutils package, has been closed.
The explanation is attached below, along with your original report.
If you require more details, please reply to 72235 <at> debbugs.gnu.org.
--
72235: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=72235
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
On Sun, Jul 21, 2024 at 11:14 AM Bruno Haible <bruno <at> clisp.org> wrote:
> On FreeBSD 14.0 and NetBSD 10.0, a build fails after sources have been modified:
>
> $ touch src/cmp.c
> $ ./configure
> $ make V=1
> ...
> base=`expr cmp.1 : '\(.*\).1'` && test -x ../src/$base && (echo '[NAME]' && sed 's@/\* *@@; s/-/\\-/;s/^GNU //; q' ../src/$base.c) | PATH="../src:$PATH" ./help2man -i - -i ./$base.x -S 'diffutils 2024-05-21' $base > cmp.1-t && mv cmp.1-t cmp.1
> /bin/sh: ./help2man: not found
> *** Error code 127
>
> Stop.
> make[1]: stopped in /home/bruno/diffutils-2024-07-21/man
> *** Error code 1
>
>
> The reason is that on FreeBSD, perl is at /usr/local/bin/perl, not /usr/bin/perl.
> Likewise, on NetBSD, perl is at /usr/pkg/bin/perl, not /usr/bin/perl.
> And likewise, on Guix, the only binary in /usr/bin is /usr/bin/env.
>
> The attached patch fixes it. "use warnings" instead of option '-w' is
> recommended per https://stackoverflow.com/questions/12554179/ ; it avoids
> the use of /usr/bin/env's option '-S' which is unportable (not specified
> by POSIX).
Thanks. I have pushed that.
[Message part 3 (message/rfc822, inline)]
[Message part 4 (text/plain, inline)]
On FreeBSD 14.0 and NetBSD 10.0, a build fails after sources have been modified:
$ touch src/cmp.c
$ ./configure
$ make V=1
...
base=`expr cmp.1 : '\(.*\).1'` && test -x ../src/$base && (echo '[NAME]' && sed 's@/\* *@@; s/-/\\-/;s/^GNU //; q' ../src/$base.c) | PATH="../src:$PATH" ./help2man -i - -i ./$base.x -S 'diffutils 2024-05-21' $base > cmp.1-t && mv cmp.1-t cmp.1
/bin/sh: ./help2man: not found
*** Error code 127
Stop.
make[1]: stopped in /home/bruno/diffutils-2024-07-21/man
*** Error code 1
The reason is that on FreeBSD, perl is at /usr/local/bin/perl, not /usr/bin/perl.
Likewise, on NetBSD, perl is at /usr/pkg/bin/perl, not /usr/bin/perl.
And likewise, on Guix, the only binary in /usr/bin is /usr/bin/env.
The attached patch fixes it. "use warnings" instead of option '-w' is
recommended per https://stackoverflow.com/questions/12554179/ ; it avoids
the use of /usr/bin/env's option '-S' which is unportable (not specified
by POSIX).
[0001-build-Fix-use-of-perl-on-Guix-FreeBSD-NetBSD.patch (text/x-patch, attachment)]
This bug report was last modified 1 year and 31 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.