bit rot in build instructions
Jeff Johnston
jjohnstn@redhat.com
Tue Sep 27 13:55:00 GMT 2005
Jonathan S. Shapiro wrote:
> I was trying to rebuild the lib/libc doc dvi's, because the online
> versions have bounding box bugs. I ran into two problems:
>
> 1. The quick configure instructions at http://sources.redhat.com/newlib/
> have rotted -- there is no "src" subdirectory
>
That section is referring to the CVS sources. When you check out
newlib, you get a /src directory as the top directory. Clarification is
required in the README regarding whether you have checked out the
sources are have the tarball.
> 2. After unpacking the tarball to get ./newlib-1.13.0, I did
>
> mkdir build
> cd build
> ../newlib-1.13.0/configure
> make
>
> which gave "Nothing to be done for 'all"
>
This is because you cannot just build natively. For x86 linux, you need
to specify --with-newlib on your configuration. This just isn't spelled
out very well. There is a section called Shared Library in the file
which mentions this but doesn't spell out that by default you can't
build a native newlib.
> same result with make all-target-newlib.
>
> No change if I configure with an explicitly provided --target.
>
> 3. If I instead configure with
>
> ../newlib-1.13.0/newlib/configure
>
> then I get a much longer configure process. After this, "make all" gets
> somewhere.
>
You dont want to do this. The configuration of newlib is meant to get
information from the top level configuration.
> 4. However, the dvi-recursive target is broken in three ways:
>
> A. The TEXINPUTS variable wants a directory path, NOT a filename.
> This is an error in the makefile.
>
> B. The actual path to texinfo.tex is wrong (it's looking in
> newlib-1.13.0/newlib/texinfo rather than newlib-1.13.0/newlib
>
> C. Even after I fix these two issues by hand, I can't build the DVI
> file because of a bug in makeinfo (tail of output below).
>
> Is this a known issue that is already fixed in the CVS tree?
>
> The mention of environment "@lisp" is disheartening, since the input
> file doesn't appear to mention an @lisp environment anywhere...
>
> I also tried just running makeinfo by hand. No joy. Same problem.
>
make info works fine from the top. make dvi-target is indeed resulting
in the errors you see. I can't remember the last time I built
dvi-target if at all.
>
> shap
>
>
>
> cat ../../newlib-1.13.0/newlib/libc/sys.tex >>tmp.texi
> /bin/sh ../../newlib-1.13.0/newlib/libc/../../move-if-change tmp.texi
> targetdep.tex
> touch stmp-targetdep
> TEXINPUTS=../../newlib-1.13.0/newlib/libc/../texinfo/texinfo.tex:
> $TEXINPUTS \
> MAKEINFO='makeinfo -I ../../newlib-1.13.0/newlib/libc' `if test
> -f ../../newlib-1.13.0/newlib/libc/../texinfo/util/texi2dvi; then
> echo ../../newlib-1.13.0/newlib/libc/../texinfo/util/texi2dvi; else echo
> texi2dvi; fi` ../../newlib-1.13.0/newlib/libc/libc.texinfo
> /usr/bin/texi2dvi: line 457:
> cd: ../../newlib-1.13.0/newlib/libc/../texinfo/texinfo.tex: Not a
> directory
> This is pdfeTeXk, Version 3.141592-1.21a-2.2 (Web2C 7.5.4)
> file:line:error style messages enabled.
> entering extended mode
>
> (/home/shap/WORK/old-schema/coyotos/src/ccs/_FSF/newlib-1.13.0/newlib/libc/libc
> .texinfo (/usr/share/texmf/tex/texinfo/texinfo.tex
> Loading texinfo [version 2005-01-30.17]: Basics, pdf, fonts, page
> headings,
> tables, conditionals, indexing, sectioning, toc, environments, defuns,
> macros,
> cross references, insertions,
> (/usr/share/texmf/tex/generic/epsf/epsf.tex)
> localization, and turning on texinfo input format.) [1] [2]
> (./targetdep.tex
> Chapter 1 [1] (./stdlib/_Exit.def
> ./stdlib/_Exit.def:9: This command can appear only in environment
> @example, not
> in environment @lisp.
> @badenverr ...temp , not @inenvironment @thisenv }
>
> @checkenv ...@ifx @thisenv @temp @else @badenverr
> @fi
> @\end ...pandafter @checkenv @csname #1@endcsname
> @csname E#1@endcsname
> @end...
> l.9 @end example
>
> ?
>
More information about the Newlib
mailing list