Viewing Issue Advanced Details
ID Category [?] Severity [?] Reproducibility Date Submitted Last Update
06801 Compiling Major Always Dec 25, 2017, 14:58 Dec 26, 2017, 09:28
Tester cuavas View Status Public Platform MAME (Self-compiled)
Assigned To Resolution Open OS Windows 10 (64-bit)
Status [?] Confirmed Driver
Version 0.192 Fixed in Version Build 64-bit
Summary 06801: Can't link SDL builds on Windows with GCC 7
Description

SDL builds for Windows fail to link with GCC 7 (it works with GCC 5 or GCC 6).


32-bit link error:


Linking sdlmame.exe...
C:/Users/_merlin/msys64/mingw32/lib\libqtmain.a(qtmain_win.o):qtmain_win.cpp:(.text+0x12e): undefined reference to `qMain(int, char**)'
collect2.exe: error: ld returned 1 exit status
mame.make:252: recipe for target '../../../../../sdlmame.exe' failed

64-bit link error:


Linking sdlmame64.exe...                                                                                                        
../../../../mingw-gcc/bin/x64/Release/liblualibs.a: error adding symbols: Malformed archive
collect2.exe: error: ld returned 1 exit status
mame.make:252: recipe for target '../../../../../sdlmame64.exe' failed
make[2]: *** [../../../../../sdlmame64.exe] Error 1

In the 64-bit case, liblualibs.a is not malformed - the same static archive library can be successfully linked into the Win32 OSD version of MAME. Changing the order of the objects in liblualibs.a changes the error message, but it fails to link in any case. The tools link successfully, only the emulator fails.

Steps To Reproduce Build with OSD=sdl in your make arguments.
Additional Information
Flags
Regression Version
Affected Sets / Systems
Attached Files
 
Relationships
There are no relationsihp linked to this issue.
Notes
1
User avatar
No.14563
Robbbert
Developer
Dec 26, 2017, 00:51
Fixed typo.