Another attempt [Re: Groff is not working in the latest code]
Yuri Pankov
yuri.pankov at gmail.com
Wed Aug 27 04:33:52 UTC 2008
Alex Goncharov wrote:
> `groff' is still not working for me, and with it `man' doesn't:
>
> ----------------------------------------
> $ uname -srv
> FreeBSD 7.1-PRERELEASE FreeBSD 7.1-PRERELEASE #34: Tue Aug 26 18:14:46 EDT 2008...
>
> $ man man
> /usr/bin/groff: can't find `DESC' file
> /usr/bin/groff:fatal error: invalid device `ascii'
> ----------------------------------------
>
[snip]
>
> So, I looked at how things are being built and think that the
> following is supposed to happen with respect to `groff' -- a GNU
> program:
>
> 1. The build is driven by `gnu/usr.bin/groff/Makefile' (all paths in
> the following are relative to `/usr/src'.
>
> 2. During the build, the original "contrib" code is used, to be found
> in `contrib/groff'.
>
> That code is configured by the pristine `contrib/groff/configure'
> and results in setting the "prefix" to the GNU-usual `/usr/local'
> and generating the FreeBSD-unaware `defs.h' and `config.h'.
contrib/groff/configure shouldn't be called at all, looks like there's
something wrong with your local build environment. Check timestamps on
src/contrib/groff and src/gnu/usr.bin/groff contents (try removing them
and checkout again). Posting relevant entries from /etc/{make,src}.conf
and your `env` output could be helpful too.
> 3. Then some magic "is supposed to happen / was happening two weeks
> ago for me", when the newly generated `defs.h' and `config.h' are
> replaced with the FreeBSD hard versions that had been delivered
> from CVS -- and the paths get corrected to eliminate the `local'
> component from them and do other path adjustments to bring it all
> to the FreeBSD standards:
>
> --------------------
> $ diff contrib/groff/src/include/defs.h gnu/usr.bin/groff/src/include/defs.h | head -n 12
yuri:/usr/src> diff -u contrib/groff/src/include/defs.h
gnu/usr.bin/groff/src/include/defs.h
diff: contrib/groff/src/include/defs.h: No such file or directory
[snip]
> 4. Then the build happens with whatever `defs.h' and `config.h' will
> be found at that time under `contrib/groff/src/include'.
>
> If the step 3 worked before but is not working now, it explains my
> current end results.
>
> But how about others: everything works for you? What could have
> triggered the change in the process for me a week or so ago?
`man man` works for me on 7.0-RELEASE with groff built from RELENG_7 src.
> Anybody is able and willing to lead me out of my lasting misery?
>
> Thanks,
>
> -- Alex -- alex-goncharov at comcast.net --
HTH,
Yuri
More information about the freebsd-stable
mailing list