pkgsrc-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: GCC_REQD+= 12 ?(Re: games/openrct2 spins 99% CPU for hours



Makoto Fujiwara <makoto%if.t.u-tokyo.ac.jp@localhost> writes:

>   games/openrct2 runs into 99 % spinning at some point, and understood
> it was running with gcc10, so just tried using gcc12 and it runs OK.

ah, I didn't understand that it was running badly, vs a compilation
error.

> Upstream does not seem to me any gcc requirement:
>   https://github.com/OpenRCT2/OpenRCT2/blob/develop/readme.md
> (I've just checked this URL, for the first time ;-(

Mike Pumford says:

> https://github.com/OpenRCT2/OpenRCT2/wiki/Building-OpenRCT2-on-Linux

> Says GCC>=12. or clang >=8.0. (C++20 support required)

which is interesting, in terms of "C++20 requires gcc12", as documented
by gcc.   Maybe they know 10 miscompiles it, but maybe they are just
being careful.

> gcc11 is not easy to me to test, just because we don't have it in pkgsrc
> (right ?)

sorry, didn't realize we skipped it.


> When this package is compiled with gcc-10, based on the setting of
>     USE_CXX_FEATURE+= c++20 (and with mk/compiler/gcc.mk):

this is a bug in gcc.mk, I am increasingly thinking.

> it spins 99% at some point.
> Is it because of
> - cmake ?
> - gcc-10 problem ?  (I think this is true)
> - upstream code ?  (but OK with gcc-12)

I lean to "gcc-10 buggily implements c++20 and should not be used with it"

> I probably add GCC_REQD+= 12 with the comment.
> (in pbulk, I do not have any CPU monitor other than my manual intervention,
> so I have to check it if infinitely runs,
> jperkin@ suggested some settings, but I don't remember it, sorry)

At this point in the freeze, that seems reasonable to me (speaking as
just another pkgsrc member).

But longer term, this is papering over what I see as a problem in gcc.mk
and I think we should fix it there and then undo the GCC_REQD that have
been added for C++20 programs.


Home | Main Index | Thread Index | Old Index