I managed to make some progress over the weekend and I've got the python binary built with GCC 10 (natively).
One thing I have found is that closing a taskwindow that's running python takes the machine out. Quiting python first is okay, but if you don't it totally hangs.
Cheers
Chris
On 12/03/2022 10:48 Lee Noar <lee.noar@sky.com> wrote:
On 09/03/2022 14:31, Chris Johns wrote:Hello
I'd like to see if Python 3.10 will build with GCC 10.
I suspect there are a few issues that might come into play here. One isthat I usually build native, so it might take a week to build (IIRC GCC10 is very slow when building native). I could probably get it tocross-compile on my unix box though.Cross-compiling is the better option because you have the benefit of theautobuilder to build the dependencies. After building GCC 10, adding
RO_USE_ARMEABIHF=yes
to your build-setvars ensures that most things are then built with GCC10 (there may be some old packages that make assumptions about thecompiler in use, but I think those are rare).
The second is the various shared libs that python uses.Am I right inthinking that I would need to get (or build) compatible versions of themall to work with the output of gcc 10?Yes, GCC 10 uses a different stack extension strategy than previousversions. Instead of building stack checks into the code and addingnew chunks to extend the stack, GCC 10 uses a flat stack and allocatesnew stack memory pages on the fly via an abort handler. This has thebenefit of an extra work register (i.e. R10) and a stack layout thatmatches what ported code is expecting (e.g. JITs, exception handlers).Is does, however, mean that GCC 4 code and GCC 10 code are notcompatible.
Lee.
No comments:
Post a Comment