It is not possible to simply use winelib for linking to a win32 dll. You have to compile ALL of your code using winegcc/wineg++, so your whole app will depend on wine. The reason for this is that wine needs to do a lot of magic (registry, file system, windows memory layout ...). If you don't want that then the only way is to write a small winelib app and use some form of IPC to communicate between the linux and winelib app (e.g. using unix sockets or whatever). Look at the wine-devel archive for discussions about this.