this so I created a new directory and placed two files in there Foo.dll Foo.h and ran "winemaker --lower-uppercase --console .". This creates a Makefile that when I run "make" does nothing. Ok, creates an empty C file, "foo.c" and run "winemaker" again. Now a make creates foo.o foo.dll (a script) foo.dll.exe.so foo.dll.dbg.c (empty, "no debug channels found for this module") foo.dll.dbg.o I want to do something simple, call a function in a DLL. Could you please advice how to do this? Lets say we know that in the DLL there is a function int foo(DWORD a) and I want to call this function from the program int main() { foo(42); } What to I need to put into the directory and how do I call "winemaker" to make this happen? I have read the manual pages again and again but there are steps left out or things not explained so that I understand. I use "Wine-20040505.tar.gz" compiled from the FreeBSD ports tree. I have tried lots of other different commands found when searching with goole but got no useful output. I have got a generated Makefile.in (useless now when autoconf is not used), I have got a generated file with stubs the are not filled in with code, I have even got something that compiled to an executable just to complain that I have no $HOME/.wine when I try to run it. Am I trying to do something WineLib isn't supposed to handle? If not, is there a stand alone implementation of LoadLibrary() and GetProcAddress() that I can use? kent