winegcc library creation/import broken.

Peter Dons Tychsen donpedro.list at gmail.com
Fri Mar 5 09:35:04 CST 2021


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
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.winehq.org/pipermail/wine-devel/attachments/20210305/960afee5/attachment.htm>


More information about the wine-devel mailing list