This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: [BUG] glibs tries to install bogus /usr/include/stdlib.h when "make check" is run twice
- From: Szabolcs Nagy <szabolcs dot nagy at arm dot com>
- To: Markus Trippelsdorf <markus at trippelsdorf dot de>, <libc-alpha at sourceware dot org>
- Cc: <nd at arm dot com>
- Date: Wed, 14 Dec 2016 14:08:44 +0000
- Subject: Re: [BUG] glibs tries to install bogus /usr/include/stdlib.h when "make check" is run twice
- Authentication-results: sourceware.org; auth=none
- Authentication-results: spf=none (sender IP is ) smtp.mailfrom=Szabolcs dot Nagy at arm dot com;
- Nodisclaimer: True
- References: <20161214133946.GB414@x4>
- Spamdiagnosticmetadata: NSPM
- Spamdiagnosticoutput: 1:99
On 14/12/16 13:39, Markus Trippelsdorf wrote:
> (My sourceware.org/bugzilla/ account got blocked due to bogus SPAM
> warning. So I send the report directly to the list.)
>
> When one runs "make check" twice in a row, glibc tries to install
> an internal header file to /usr/include/stdlib.h, e.g.:
...
> % make -j4 check
> ...
> make[2]: Entering directory '/home/markus/glibc/nptl'
> /usr/bin/install -c -m 644 ../include/stdlib.h /usr/include/stdlib.h
> /usr/bin/install: cannot remove '/usr/include/stdlib.h': Permission denied
i've run into this header issue a few times
but for me usually it was some toolchain issue:
some make dependencies are generated by gcc and
a path setup issue can easily cause gcc to find
standard headers in /usr/include instead of in
the new glibc and then make tries to rebuild
those headers. (there are libstdc++ headers with
include_next which can make gcc look at the wrong
place).
this is fragile and dangerous behaviour:
i'd prefer if glibc did not try to rebuild
out-of-date headers outside the build directory
during make or make check.