Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 427422 - bootstrap: sys-devel/flex-2.5.35 fails to build because help2man is not installed on FreeBSD 9.1-BETA1
Summary: bootstrap: sys-devel/flex-2.5.35 fails to build because help2man is not insta...
Status: RESOLVED WORKSFORME
Alias: None
Product: Gentoo/Alt
Classification: Unclassified
Component: Prefix Support (show other bugs)
Hardware: All FreeBSD
: Normal major (vote)
Assignee: Gentoo Prefix
URL:
Whiteboard:
Keywords: Bug
Depends on:
Blocks:
 
Reported: 2012-07-21 01:26 UTC by Richard Yao (RETIRED)
Modified: 2012-08-11 07:46 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments
sys-devel/flex-2.5.35 failure log (build.log,37.69 KB, text/plain)
2012-07-21 01:26 UTC, Richard Yao (RETIRED)
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Richard Yao (RETIRED) gentoo-dev 2012-07-21 01:26:59 UTC
Created attachment 318786 [details]
sys-devel/flex-2.5.35 failure log

sys-devel/flex-2.5.35 will fail to build on a fresh FreeBSD 9 installation because help2man is not installed as part of the base system.

Doing `emerge --oneshot help2man` before building flex will prevent this issue from occurring, but this will build perl and coreutils before the toolchain has been installed. Doing `emerge --oneshot --nodeps help2man` will fail due to a QA check that prevents it from depending on an out-of-prefix interpreter.
Comment 1 Richard Yao (RETIRED) gentoo-dev 2012-07-21 01:44:24 UTC
I was wrong. The QA notice issue occurs regardless of whether perl is installed by prefix or not:

mtree: not found
mtree: not found
/gentoo/usr/lib/portage/bin/ebuild-helpers/prepall: line 14: mtree: command not found
/gentoo/usr/lib/portage/bin/ebuild-helpers/prepstrip: line 177: scanelf: command not found
/gentoo/usr/lib/portage/bin/ebuild-helpers/prepstrip: line 256: scanelf: command not found
ecompressdir: bzip2 -9 /usr/share/doc
ecompressdir: bzip2 -9 /usr/share/info
ecompressdir: bzip2 -9 /usr/share/man
 * QA Notice: the following files use invalid (possible non-prefixed) shebangs:
 *   gentoo/usr/bin/help2man:/usr/local/bin/perl (script help2man installed in PATH but interpreter /usr/local/bin/perl not found)
 * ERROR: sys-apps/help2man-1.40.10 failed:
 *   Aborting due to QA concerns: invalid shebangs found
 * 
 * Call stack:
 *   misc-functions.sh, line 1895:  Called install_qa_check
 *   misc-functions.sh, line  253:  Called install_qa_check_prefix
 *   misc-functions.sh, line 1001:  Called die
 * The specific snippet of code:
 *              die "Aborting due to QA concerns: invalid shebangs found"
 * 
 * If you need support, post the output of 'emerge --info =sys-apps/help2man-1.40.10',
 * the complete build log and the output of 'emerge -pqv =sys-apps/help2man-1.40.10'.
 * The complete build log is located at '/gentoo/var/tmp/portage/sys-apps/help2man-1.40.10/temp/build.log'.
 * The ebuild environment file is located at '/gentoo/var/tmp/portage/sys-apps/help2man-1.40.10/temp/environment'.
 * Working directory: '/gentoo/var/tmp/portage/sys-apps/help2man-1.40.10/image'
 * S: '/gentoo/var/tmp/portage/sys-apps/help2man-1.40.10/work/help2man-1.40.10'
!!! post install failed; exiting.

The last time I encountered this issue, I worked around it by doing `pkg_add -r help2man`. That will not work for non-root users, so we need a better solution.
Comment 2 Richard Yao (RETIRED) gentoo-dev 2012-08-04 13:30:54 UTC
The following explains this issue fairly well, despite 8 years having passed:

http://osdir.com/ml/lex.flex.general/2003-07/msg00023.html

>Hello, everybody,
>
>I keep stumbling over strange things in trying to build 2.5.31 on a
>DEC Alpha box running Digital Unix. This time, it's help2man.
>
>I didn't have that tool installed. So after I had to modify main.c
>(to point it to "gnum4" instead "m4"), all builds failed because they
>couldn't run that tool. That's rather a strange thing to happen at that
>point of the process, since "configure" does check for the existence of
>it, and if it's not found, it should complain about it. Instead, it
>just set @HELP2MAN@ to help2man and presumed it existed.
>
>That's not a very useful behaviour, I think. AFAICS, if help2man is not
>found, the "missing" mechanism of GNU autoconf should be used.
>
>[Of course, I've now installed help2man, too.]

Running `env HELP2MAN="/bin/echo help2man" emerge --oneshot --nodeps sys-devel/flex allows it to build successfully.
Comment 3 Fabian Groffen gentoo-dev 2012-08-10 09:33:04 UTC
I have never encountered this problem, I'm affraid it's deemed to be invalid.
Comment 4 Fabian Groffen gentoo-dev 2012-08-11 07:46:17 UTC
I can perform stage{1,2,3} flawlessly on a vanilla FreeBSD 9.1-BETA1