the mystery of math.h in lib/gcc/%triple-name%/%gcc-version%/include-fixed
Dennis Clarke
dclarke@blastwave.org
Wed Oct 24 16:58:00 GMT 2018
On 10/24/2018 12:22 PM, Jonathan Wakely wrote:
> On Wed, 24 Oct 2018 at 17:16, Dennis Clarke wrote:
>>
>> On 10/24/2018 11:23 AM, Jonathan Wakely wrote:
>>> What's not clear from your email is whether you built those versions
>>> of GCC on the host machines where you're testing them (and if so,
>>> whether it was before or after installing patch 119966-02) or whether
>>> you built them on one machine and then copied them to the other hosts.
>>>
>>
>> Thank you Jonathan. This had me up late last night looking over three
>> different builds of gcc that go back at least two years. Clearly two
>> years. A few machines have those dastdardly libm patches and other
>> machines do not. The gcc builds that were wonderfully bootstrapped on
>> systems without that libm patches are of course borked on any system
>> that has them. I suspect the reverse is also true.
>
> Then that's the cause of the problem.
>
>> However the 7.3.0 has math.h in the include-fixed and that doesn't matter:
>>
>> /usr/local/gcc7/lib/gcc/sparc64-sun-solaris2.10/7.3.0/include-fixed/math.h
>
> Because what matters is not whether that file is present or not, but
> whether what gets included by <math.h> on the host machine *now*
> matches what got included by <math.h> on the build machine *then*. It
> doesn't matter whether what gets included is /usr/include/math.h or
> GCC's include-fixed/math.h or something else, as long as it matches
> what libstdc++ was configured against.
>
That damn patch should come with a warning : software from the past that
was working is about to fail. Good luck.
Dennis
More information about the Gcc-help
mailing list