winelib .so change in 20050930?

Michael Ost most at
Mon Oct 10 16:30:29 CDT 2005

On Fri, 2005-10-07 at 11:02, Alexandre Julliard wrote:
> Michael Ost <most at> writes:
> > I started down this path with some success and then realized that, gulp,
> > I would have to create a spec file for my libraries. Hundreds of C++
> > functions in several libraries. If this is indeed required, is there any
> > help in building a spec file? Is it possible to export C++ functions as
> > opposed to straight C?
> You shouldn't need to export them, you can still link to the library
> directly at the Unix level, a Winelib dll is still an ELF library.

OK. That's right. But I'm still flailing trying to build my winelib app
with 20050930. Could you tell me what's missing from the steps below? Or
point me to some docs? This used to work in 20050419, except that I had
to compile the C output from winebuild. A million thanks.  ... mo

* junk.cpp
#include <stdio.h>
#include <windows.h>
int main(int argc, char* argv[])
	::MessageBox(NULL, "Howdy World", "Junk", MB_OK);

* build steps
$ cc -I/usr/include/wine/windows -c junk.cpp -o junk.o
$ winebuild --exe -o junk.spec.o --filename -L/usr/lib/wine junk.o -luser32
$ g++ -shared -o junk.o junk.spec.o

* run it
$ wine ./
wine: could not load L"Z:\\home\\most\\cvs-muse\\sandbox\\mo\\junk\\": /home/most/.wine/dosdevices/z:/home/most/cvs-muse/sandbox/mo/junk/ undefined symbol: __wine_spec_init_ctor

More information about the wine-devel mailing list