[tex-live] building from source

Karl Berry karl at freefriends.org
Sat May 27 22:48:27 CEST 2006


    The #define one is supposed to use to get stuff that depends on
    __USE_GNU is _GNU_SOURCE.

Sure.  But you reported that Cygwin stdio.h (and GNU/Linux stdio.h too,
at least on my red hat systems) is protected by __USE_GNU.  Therefore
__USE_GNU, specifically, must be getting defined somewhere -- apparently
in the Cygwin include files, and under different conditions than in the
Linux include files.

As I wrote before, adding -dD to the compilation line of one of the
failing files and inspecting the output should answer this question once
and for all without further remote guessing.

Also, gcc -E -dM - </dev/null will show the list of predefined symbols.
Perhaps Cygwin defines _GNU_SOURCE or __USE_GNU that way, although it
would be quite strange.

    So the question is œôòüWhat is #defining _GNU_SOURCE?œôòý

Nothing in the TeX sources.  Therein lies the whole problem and the
reason it seems to me to be a bug in Cygwin.

    Martin> "__USE_GNU *never* must be defined by the user."

Right, and, it isn't.

    Is this this cygwin bug?
    http://ftp.tug.org/mail/archives/pdftex/2006-February/006370.html

Yes, but that message implies that the Cygwin stdio.h does not protect
getline.  It does, according to what James reported.  Therefore the bug
is not that the declaration is present, but that __USE_GNU is being
incorrectly defined in the system include files (as far as I can tell).

Thanks,
Karl


More information about the tex-live mailing list