On Mittwoch, 1. Januar 2020 17:09:10 CET Alexander Voropay wrote:
> C:/msys32/mingw32/i686-w64-mingw32/include/string.h:234: undefined
> reference to `__strcat_chk'
Looks like a mismatch between the header files and the libraries. If the header files redirect strcat to __strcat_chk if _FORTIFY_SOURCE is defined, then of course the library must provide that symbol. Where did you get that compiler from? I'm using the one from the MSYS2 project, which is 7.3.0
>To resolve this issue I've commented in the config.h
I've included that on purpose, because that is normally also defined by most distros when building the package via rpm or similar. Maybe it should be ommitted for MinGW, but not in general.
>Should I just include -lssp ?
Might help in this case, but maybe its just better do disable the checks for mingw. It will be hard to figure out in configure, whether that library is needed.
>cdrom.cpp:548:92: warning: cast between incompatible function types
Will have a look, but seems harmless.
. Where did you get that compiler from? I'm using the one from the MSYS2 project, which is 7.3.0
On Donnerstag, 2. Januar 2020 12:00:59 CET Alexander Voropay wrote:
> I'm using a recent MSYS2 with Mingw32 target.
Ah ok, i haven't updated it for quite some time.
>Note, MSYS2 now has 3(!!!) different shells (and build systems):
>MSYS intesf, mingw32 ang mingw64
Yes, but 64-bit targets are currently not supported on windows (also not for cygwin). Maybe the "normal" target works, but for JIT i yet have to figure out how to install the exception handler, and how to enforce a virtual address in the 32bit range.
>There is one small issue: it uses alot of mingw's DLL's
That could be, but only a few of them are directly referenced by aranym (zlib, jpeg-8 and SDL). winpthread, gcc_s and stdc++ are needed by the toolchain. Others are referenced by windows libraries, and mostly depend on the windows version. Only libgmp looks a bit dubious, maybe that is now needed by libgcc_s, for decimal floats? On windows7, with that older compiler, i get
ADVAPI32.dll => C:\Windows\SysWOW64\ADVAPI32.dll (0x77c60000)
msvcrt.dll => C:\Windows\SysWOW64\msvcrt.dll (0x6ff50000)
KERNELBASE.dll => C:\Windows\SysWOW64\KERNELBASE.dll (0x7d850000)
ntdll.dll => C:\Windows\SysWOW64\ntdll.dll (0x7de70000)
KERNEL32.dll => C:\Windows\SysWOW64\KERNEL32.dll (0x7dd60000)
RPCRT4.dll => C:\Windows\SysWOW64\RPCRT4.dll (0x7db50000)
SspiCli.dll => C:\Windows\SysWOW64\SspiCli.dll (0x7d8a0000)
CRYPTBASE.dll => C:\Windows\SysWOW64\CRYPTBASE.dll (0x10000000)
SHELL32.dll => C:\Windows\SysWOW64\SHELL32.dll (0x73800000)
SHLWAPI.dll => C:\Windows\SysWOW64\SHLWAPI.dll (0x6de20000)
GDI32.dll => C:\Windows\SysWOW64\GDI32.dll (0x7dab0000)
USER32.dll => C:\Windows\SysWOW64\USER32.dll (0x7dc50000)
LPK.dll => C:\Windows\SysWOW64\LPK.dll (0x7d620000)
USP10.dll => C:\Windows\SysWOW64\USP10.dll (0x6f8e0000)
libgcc_s_dw2-1.dll => C:\mingw32\bin\libgcc_s_dw2-1.dll (0x6eb40000)
libwinpthread-1.dll => C:\mingw32\bin\libwinpthread-1.dll (0x64b40000)
libstdc++-6.dll => C:\mingw32\bin\libstdc++-6.dll (0x6fe40000)
libjpeg-8.dll => C:\mingw32\bin\libjpeg-8.dll (0x6ba00000)
SDL.dll => C:\mingw32\bin\SDL.dll (0x68300000)
WINMM.DLL => C:\Windows\SysWOW64\WINMM.DLL (0x41b00000)
libusb-1.0.dll => C:\mingw32\bin\libusb-1.0.dll (0x6b800000)