compiling Windows code with g++ on Linux using msvcrt - good idea? if so, how do you do it?

foobarbaz biffblaff foobarbaz99 at
Thu Dec 11 14:13:51 CST 2008


Thanks for your answer.

Unfortunately, I will not be able to use wineg++ for a variety of political reasons.

Is there anyway, even if it involves some non-standard hacking, to get the Windows functions defined in <wine_install_dir>/include/wine/windows to be compiled in a library that I can directly link to with g++ without using wineg++?

I mean, wine is all c code right? And it's compiled with the g++ on my system? 

Has no one ever wanted to do this before?


> Date: Thu, 11 Dec 2008 09:32:53 +0100
> From: thunderbird2k at
> Subject: Re: compiling Windows code with g++ on Linux using msvcrt - good idea?	if so, how do you do it?
> To: foobarbaz99 at; wine-devel at
> > 
> > Hi,
> > 
> > I have a huge amount of Windows code that I'm porting to Linux.
> > 
> > Wine is turning out to be a read godsend, thank you guys!
> > 
> > Anyway, I've had tons of luck including the directory
> > <wine_dir>/include/wine/windows in my include path. All my Windows types are there and
> > everything is wonderful. I've even been able to link against the libraries by
> > renaming, for example, to and using -lfoo on the g++
> > command line.
> > 
> > I actually haven't got all my functions defined so I don't know if this
> > will actually run yet because the link isn't complete yet.
> > 
> > My first question is whether this will work. Will all my Windows functions
> > with function declarations defined in the windows directory and code
> > compiled into actually run?
> > 
> > Second, I see that some of the functions I want to use are actually
> > defined by headers in the msvcrt directory. However, this directory contains tons
> > of header files that my system (and gcc) also have under /usr/include and
> > gcc's own directories. I understand that msvcrt is Windows lib c, but I
> > wonder how I'm supposed to use it with gcc to compile? I've tried -nostdinc to
> > gcc, but the number of errors I get is enormous.
> > 
> > It's not the end of the world if I can't use Wine's msvcrt, but if I could
> > use it, it would define dozens more functions on which my program relies,
> > or if its use was mandatory in order to get the functions implemented in
> > to work, then obviously I wonder how I'm supposed to compile my
> > Windows code with Wine to make everything work?
> > 
> > I'm sorry if this is a dumb question. I can't find a way to search the
> > wine-devel mailing list other than with google and I can't find anything on
> > there or other docs that answer this question, which I'm sure has been asked
> > a million times and has a simple answer.
> > 
> > Thank you thank you,
> > 
> > Jeff
> > 
> > _________________________________________________________________
> > Send e-mail faster without improving your typing skills.
> >
> Just compiling your program using g++ won't work as Wine needs to perform a lot of magic. For that reason Wine ships with its own gcc/g++ wrapper programs called winegcc/wineg++ both are mingw compatible. You should build your program using that and it won't have issues linking with wine libraries and it also allows you to link against linux libraries.
> Roderick
> -- 
> Sensationsangebot verlängert: GMX FreeDSL - Telefonanschluss + DSL 
> für nur 16,37 Euro/mtl.!*

Suspicious message? There’s an alert for that.
-------------- next part --------------
An HTML attachment was scrubbed...

More information about the wine-devel mailing list