Re: Windows / Tdmgcc64 - unable to compile Euphoria shared library file
- Posted by ghaberek (admin) in March
- 1282 views
Question : Is there a way to compile Euphoria 4.1.0 shared library files on Windows ?
Sorry, all of your markup is making this hard to follow. If you could just put the output messages directly into {{{/}}} blocks without any additional markup, that would help.
Also, know that building shared libraries from Euphoria code is not well-tested so I'm not sure how much I can help. There are a few things to focus on here:
User supplied library does not exist: C:\Euphoria\bin\euso.e
The eu.a and euso.a libraries are for building static and dynamic binaries, respectively. Basically euso.a is built with -fPIC (position-independent code) and eu.a is not. But on Windows it's all the same, so you can just copy eu.a to euso.a to correct this.
oe_dll.c: error: 'oe_dll_funct' aliased to undefined symbol '_1oe_dll_funct@0' void oe_dll_funct() __attribute__ ((alias ("_1oe_dll_funct@0")));
The translator is erroneously attaching 32-bit STDCALL name-decoration to the exported functions, but since you're doing this with 64-bit the "@0" bits at the end are causing a problem. You can remove them from the generated C code and it should build correctly.
-Greg