Hi WineHQ,
I have an older library that i have create using winelib (and an application that uses it). It use to work fine. In later wine builds this does not work any more.
I have tried allot of different combinations, and i cannot seem to get was has broken.
1) Every time a call is made into the library the program crashes immediately. 2) If i compile all the files into one program from the beginning the program works fine. 3) Using "winemaker" to create a library and app shows the exact same problem. 4) It seems to be related to importing the library or maybe the calling convention?
I have a feeling this is just broken somewhere, or have i done something wrong all along, and first now do i get punished for it because something changed? Again, winemaker shows the exact same problem.
I created a simple library setup to test it (a tiny lib and tine app):
commands:
winegcc -Wall -Werror -mwindows -mno-cygwin -fPIC -g -O0 -c lib.c -o lib.o winegcc -Wall -Werror -mwindows -mno-cygwin -fPIC -g -O0 -c test.c -o test.o winegcc -shared -olibtest.so lib.o -mwindows -mno-cygwin winegcc -Wl,-rpath,"$ORIGIN" -mwindows -mno-cygwin -ltest -L. test.o -otest.exe
---
lib.c (library):
#include <stdio.h> #include <stdlib.h>
void lib_call(void) { printf("oh\n"); exit(0); }
---
test.c (app):
#include <windows.h>
extern void lib_call(void);
INT WINAPI WinMain(HINSTANCE inst, HINSTANCE prev_inst, PSTR cmd_line, INT cmd_show) { lib_call(); return 0; }
---
Can anyone figure this out. I would be very thankful.
Thanks,
/pedro