Author Topic: Updated GCC Builds  (Read 15098 times)

Dave Yeo

  • Hero Member
  • *****
  • Posts: 4787
  • Karma: +99/-1
    • View Profile
Re: Updated GCC Builds
« Reply #15 on: May 03, 2021, 10:58:43 pm »
Trying the opposite, building with 10.3.0 and linking with 9.9.2 results in a python error while creating the list file, whether linking with 10.3.0 or 9.9.2. Probably a problem with the fake libs.
Rather then using AR or EMXOMFAR to build static libs, the build builds libs-desc which are a list of all the object files that would have been in the static lib, it also unars some existing libs into object files then the build system gathers them all up and builds the list file. Hard to tell where the failure is happening. The build system has just got weirder and weirder as they started moving away from configure && make to a Python mess.
Here's the log.

Paul Smedley

  • Hero Member
  • *****
  • Posts: 2092
  • Karma: +159/-0
    • View Profile
Re: Updated GCC Builds
« Reply #16 on: May 04, 2021, 04:52:25 am »
Hi Dave,

Now the compile dies while linking xul.dll with a Python OSError (Errno 22), which I believe is a failure to pass the list file to emxomfld. We're linking over a 1000 object files.
Had the same or similar problem with GCC 9.2.0 and I worked around by creating my own list(response) file and manually calling emxomfld until Dmitriy fixed it sometime later.
IIRC, the problem with 9.2.0 was actually nested response files and was one of the last fixes for 9.2.0

This makes sense - the 10.3.0 and 11.1.0 builds are based off of *my* patches to GCC. bww took those patches and have made additional changes. I'll need to work through those and apply the ones that make sense here.

It will likely be the weekend before I get a chance to look at this.

Cheers,

Paul.

Paul Smedley

  • Hero Member
  • *****
  • Posts: 2092
  • Karma: +159/-0
    • View Profile
Re: Updated GCC Builds
« Reply #17 on: May 04, 2021, 11:55:12 am »
Hi Dave,

Now the compile dies while linking xul.dll with a Python OSError (Errno 22), which I believe is a failure to pass the list file to emxomfld. We're linking over a 1000 object files.
Had the same or similar problem with GCC 9.2.0 and I worked around by creating my own list(response) file and manually calling emxomfld until Dmitriy fixed it sometime later.
IIRC, the problem with 9.2.0 was actually nested response files and was one of the last fixes for 9.2.0

This makes sense - the 10.3.0 and 11.1.0 builds are based off of *my* patches to GCC. bww took those patches and have made additional changes. I'll need to work through those and apply the ones that make sense here.

It will likely be the weekend before I get a chance to look at this.

I've implement these patches (I think) and am attempting to build a debug build now, which should help with helping identify the cause of the traps.

https://smedley.id.au/tmp/gcc-11.1.0-os2-20210504-debug.zip

Cheers,

Paul
« Last Edit: May 04, 2021, 12:03:41 pm by Paul Smedley »

Dave Yeo

  • Hero Member
  • *****
  • Posts: 4787
  • Karma: +99/-1
    • View Profile
Re: Updated GCC Builds
« Reply #18 on: May 04, 2021, 05:19:02 pm »
Tried building SeaMonkey with GCC 11.1.0, it doesn't get very far as it is not happy with the std: lib.
Code: [Select]
../dist/include/mozilla/gfx/Rect.h: In static member function 'static mozilla::gfx::RectTyped<units, F> mozilla::gfx::RectTyped<units, F>::MaxIntRect()':
../dist/include/mozilla/gfx/Rect.h:168:15: error: 'numeric_limits' is not a member of 'std'
  168 |         -std::numeric_limits<int32_t>::max() * 0.5,
      |               ^~~~~~~~~~~~~~
../dist/include/mozilla/gfx/Rect.h:168:40: error: '::max' has not been declared; did you mean 'std::max'?
  168 |         -std::numeric_limits<int32_t>::max() * 0.5,
      |                                        ^~~
      |                                        std::max

With lots more similar errors. Also see more demands for -Wclass-memaccess even though it is in the flags.

Paul Smedley

  • Hero Member
  • *****
  • Posts: 2092
  • Karma: +159/-0
    • View Profile
Re: Updated GCC Builds
« Reply #19 on: May 05, 2021, 11:54:08 am »
Hi Dave,

Tried building FFmpeg with GCC 11.1.0, didn't get too far. I have a trp file but without any debug info or xqs files it is pretty useless. Need at least the map files.
Code: [Select]
Killed by SIGSEGV
pid=0x325d ppid=0x325c tid=0x0001 slot=0x00ea pri=0x0200 mc=0x0001 ps=0x0010
W:\USR\LOCAL111\LIBEXEC\GCC\I686-PC-OS2-EMX\11.1.0\CC1.EXE
CC1 0:010b24e7
cs:eip=005b:010c24e7      ss:esp=0053:0219f540      ebp=0219f598
 ds=0053      es=0053      fs=150b      gs=0000     efl=00010202
eax=2095e208 ebx=fffdffff ecx=00000004 edx=00000000 edi=213a6da0 esi=2039f4e0
Process dumping was disabled, use DUMPPROC / PROCDUMP to enable it.
gcc: internal compiler error: Segmentation fault signal terminated program cc1
Please submit a full bug report,

BTW, trying to use the script that KOMH posted years ago fails as it doesn't like localxx instead of localxxx. I set things up manually and hopefully didn't screw up.

I was crashing in libavcodec/qpeldsp.c - but of course the debug build compiles it without a crash - grrr.....

Dave Yeo

  • Hero Member
  • *****
  • Posts: 4787
  • Karma: +99/-1
    • View Profile
Re: Updated GCC Builds
« Reply #20 on: May 05, 2021, 04:36:08 pm »
It crashed here in,
Code: [Select]
Killed by SIGSEGV
pid=0xb561 ppid=0xb55f tid=0x0001 slot=0x00cf pri=0x0200 mc=0x0001 ps=0x0010
W:\USR\LOCAL11\LIBEXEC\GCC\I686-PC-OS2-EMX\11.1.0\CC1.EXE
CC1 0:01516851
cs:eip=005b:01526851      ss:esp=0053:0300f4d0      ebp=0300f538
 ds=0053      es=0053      fs=150b      gs=0000     efl=00010202
eax=00000000 ebx=201d0100 ecx=fffdffff edx=2056900c edi=00000091 esi=20b45260
Process dumping was disabled, use DUMPPROC / PROCDUMP to enable it.
gcc: internal compiler error: Segmentation fault signal terminated program cc1
Please submit a full bug report,
with preprocessed source if appropriate.
See <https://gcc.gnu.org/bugs/> for instructions.
make: *** [libavfilter/vf_hqx.o] Error 4

Unluckily still no debug symbols, perhaps add -Zmap and build xqs files.

Paul Smedley

  • Hero Member
  • *****
  • Posts: 2092
  • Karma: +159/-0
    • View Profile
Re: Updated GCC Builds
« Reply #21 on: May 06, 2021, 04:54:56 am »
Hi Dave,

It crashed here in,
Code: [Select]
Killed by SIGSEGV
pid=0xb561 ppid=0xb55f tid=0x0001 slot=0x00cf pri=0x0200 mc=0x0001 ps=0x0010
W:\USR\LOCAL11\LIBEXEC\GCC\I686-PC-OS2-EMX\11.1.0\CC1.EXE
CC1 0:01516851
cs:eip=005b:01526851      ss:esp=0053:0300f4d0      ebp=0300f538
 ds=0053      es=0053      fs=150b      gs=0000     efl=00010202
eax=00000000 ebx=201d0100 ecx=fffdffff edx=2056900c edi=00000091 esi=20b45260
Process dumping was disabled, use DUMPPROC / PROCDUMP to enable it.
gcc: internal compiler error: Segmentation fault signal terminated program cc1
Please submit a full bug report,
with preprocessed source if appropriate.
See <https://gcc.gnu.org/bugs/> for instructions.
make: *** [libavfilter/vf_hqx.o] Error 4

Unluckily still no debug symbols, perhaps add -Zmap and build xqs files.

-Zmap should already be there, but the map files won't be automatically installed by 'make install' - I'll have to see if I can fix this.

I checked executable sizes and cc1.exe was 40+ mb so I assumed the debug symbols were there... I'll try and investigate this evening.

Cheers,

Paul

Dave Yeo

  • Hero Member
  • *****
  • Posts: 4787
  • Karma: +99/-1
    • View Profile
Re: Updated GCC Builds
« Reply #22 on: May 06, 2021, 08:05:47 am »
Hi Paul,
I checked executable sizes and cc1.exe was 40+ mb so I assumed the debug symbols were there... I'll try and investigate this evening.

I assumed the same thing. Running lxlite on cc1.exe gives a 60% gain but no mention of debug data being stripped. Perhaps a -s snuck in somewhere, I hate this silent compile thing as it is too easy to miss a parameter.
Thanks,
Dave

Paul Smedley

  • Hero Member
  • *****
  • Posts: 2092
  • Karma: +159/-0
    • View Profile
Re: Updated GCC Builds
« Reply #23 on: May 06, 2021, 11:09:00 am »
Hi Paul,
I checked executable sizes and cc1.exe was 40+ mb so I assumed the debug symbols were there... I'll try and investigate this evening.

I assumed the same thing. Running lxlite on cc1.exe gives a 60% gain but no mention of debug data being stripped. Perhaps a -s snuck in somewhere, I hate this silent compile thing as it is too easy to miss a parameter.

Looks like I missed a '-s' <sigh> rebuilding now.

Paul Smedley

  • Hero Member
  • *****
  • Posts: 2092
  • Karma: +159/-0
    • View Profile
Re: Updated GCC Builds
« Reply #24 on: May 07, 2021, 11:53:52 am »
Hopefully with debug symbols this time! https://smedley.id.au/tmp/gcc-11.1.0-os2-20210507-debug.zip

Dave Yeo

  • Hero Member
  • *****
  • Posts: 4787
  • Karma: +99/-1
    • View Profile
Re: Updated GCC Builds
« Reply #25 on: May 08, 2021, 01:59:15 am »
Well, that did fix the crash here.

Paul Smedley

  • Hero Member
  • *****
  • Posts: 2092
  • Karma: +159/-0
    • View Profile
Re: Updated GCC Builds
« Reply #26 on: May 10, 2021, 05:07:10 am »
Hi Dave,

Well, that did fix the crash here.

Well that kinda sucks - the intent was to identify why it's crashing - looks like it's some kind of optimisation issue then....

Cheers,

Paul.

Dave Yeo

  • Hero Member
  • *****
  • Posts: 4787
  • Karma: +99/-1
    • View Profile
Re: Updated GCC Builds
« Reply #27 on: May 10, 2021, 07:20:45 am »
Well there is the option of XQS files or perhaps separating the dbg stuff.