[tex-live] Problem with TL source tree (eomegadir/eover-rc1.ch)
Gerben Wierda
Gerben.Wierda at rna.nl
Tue Jan 6 08:40:03 CET 2004
On Jan 6, 2004, at 05:12, Thomas Esser wrote:
>>> It works (compiles) for me. I just successfully did:
>>> rm -rf /build/X; mkdir -p /build/X; cd /build/X
>>> /t/texlive/Build/source/TeX/configure ; make
>>
>> Did you try a make (dist)clean in between? The Makefiles are not
>> reliable with respect to recreating stuff when they should, so you
>> might still be compiling old stuff even if you have synced.
>
> No, I did not. However, I have startet in a new and empty build
> directory.
> There is nothing from an old build lying around. To be 100% sure, I'll
> redo this after a
> "rm -rf /t/texlive/Build/source; p4 sync -f
> /t/texlive/Build/source/...".
OK, I did the same thing. Removed the entire source/... tree and
resynced it (what the use is of a source maintenance system if I have
to do this to trust the outcome is unclear to me). Note that this may
mask an actual error in the sources (see below).
A fresh build ends in an error as well:
> srcdir=. /bin/sh ./web2c/convert bibtex
> gcc -DHAVE_CONFIG_H -I. -I. -I.. -I./.. -no-cpp-precomp -g -O2 -c
> bibtex.c -o bibtex.o
> /bin/sh ../libtool --mode=link gcc -o bibtex bibtex.o lib/lib.a
> ../kpathsea/libkpathsea.la -lm
> gcc -o bibtex bibtex.o lib/lib.a ../kpathsea/.libs/libkpathsea.a -lm
> gcc -DHAVE_CONFIG_H -I. -I. -I.. -I./.. -no-cpp-precomp -g -O2 -c
> ctangleboot.c -o ctangleboot.o
> gcc -DHAVE_CONFIG_H -I. -I. -I.. -I./.. -no-cpp-precomp -g -O2 -c
> cwebboot.c -o cwebboot.o
> /bin/sh ../libtool --mode=link gcc -o ctangleboot ctangleboot.o
> cwebboot.o lib/lib.a ../kpathsea/libkpathsea.la -lm
> gcc -o ctangleboot ctangleboot.o cwebboot.o lib/lib.a
> ../kpathsea/.libs/libkpathsea.a -lm
> CWEBINPUTS=./cwebdir ./ctangleboot ctangle ctang-w2c
> This is CTANGLE, Version 3.64 (Web2C 7.5.2)
> *1*15*22*26*34*40*54*60*74*81*95
> Writing the output file (ctangle.c):.....500.....1000..
> Done.
> (No errors were found.)
> gcc -DHAVE_CONFIG_H -I. -I. -I.. -I./.. -no-cpp-precomp -g -O2 -c
> ctangle.c -o ctangle.o
> CWEBINPUTS=./cwebdir ./ctangleboot common comm-w2c cweb.c
> ! Cannot open output file cweb.c
> (That was a fatal error, my friend.)
It seems cweb.c is downloaded but with a time stamp that lets make try
to remake this read-only file. So I touched cweb.c and went ahead. (the
same happened to me with source/TeX/texk/cjkutils/hbf2gf/hbf2gf.c)
NOTE:
The fact that I do not have the problem now, corroborates my hunch that
there *is* something wrong. After all, this way of removing all files
and resyncing them with p4 gives you not only base files, but it also
gives you intermediate results (like cweb.c) that are stored in
perforce. So, you *cannot* be sure that the files you get are actually
used (there may be a different version of a web file around which is
not used because the sync ships you a resulting C file with a newer
time stamp but which is actually older. That is why getting everything
clean is not really clean. I guess a 'make distclean' is clean, but
that I am not even certain of (is everything intermediary indeed
removed?). I have no time now to test the make distclean route (have to
run), but I know that in the current state of the perforce tree (which
holds intermediary files) we are never certain we actually use the
latest modifications. In fact, that I ran into this problem suggests
that a basic source file was adapted and may contain a problem, but
that nobody notices it because during a compile, the old intermediary
file keeps getting used.
So, I still think that with generally fast computers today, there
should be *no* intermediate files in the source trees.
G
Warnings the following, BTW, always merit attention (dead code, and
that is generally not intentional)
> pltotf.c: In function `readinput':
> pltotf.c:2608: warning: comparison is always false due to limited
> range of data type
> texini.c: In function `loadfmtfile':
> texini.c:3151: warning: comparison is always false due to limited
> range of data type
> vptovf.c: In function `readinput':
> vptovf.c:3464: warning: comparison is always false due to limited
> range of data type
> omegaini.c: In function `loadfmtfile':
> omegaini.c:3840: warning: comparison is always false due to limited
> range of data type
> omega3.c: In function `maincontrol':
> omega3.c:8297: warning: comparison is always true due to limited range
> of data type
> omega3.c:8304: warning: comparison is always true due to limited range
> of data type
> omega3.c:8313: warning: comparison is always true due to limited range
> of data type
> eomegaini.c: In function `loadfmtfile':
> eomegaini.c:3950: warning: comparison is always false due to limited
> range of data type
More information about the tex-live
mailing list