Learning to Develop for the Wine Project

Joel Holdsworth joel at airwebreathe.org.uk
Mon Nov 30 16:24:24 CST 2015

On 30/11/15 19:01, David Reinert wrote:
> Hello Friends,
> I am a current undergraduate senior Computer Science major looking to
> become familiar with and contribute to Wine. I just want to make sure I
> am doing all the best things I can do to familiarize myself with the
> project. I have over 3 years of experience coding in C/C++ and I have
> taken a course in Operating systems, but my familiarity with any
> MS-DOS/Windows based OS(DLLs, etc.) is next to none and I understand
> that the learning curve for Wine development is very steep. I've started
> by reading through the Wine Developer's Guide Wine Architecture section
> to try and gain an understanding of how the whole process operates. is
> this useful? Is there anything else that anyone would recommend I do to
> gain to good understanding of the project or should I just start writing
> patches and dive in head first? Any and all suggestions are welcome and
> Iwould appreciate any advice.
> Thanks,
> David Reinert

Always best to scratch an itch you have. Find an application you want to 
get working - ideally something that is close to working, maybe 
something with an open bug report.

Then track down the problem either through application source code if 
you have it, or by catching API calls with WINEDEBUG etc. (good use of 
bash log filtering is helpful here).

Then try and find the behavioral difference between Wine and Windows, 
and write a mini-test app that demonstrates the problem. The innards of 
the test app can be used to write a test case for the test suite, and 
you use both of these to correct the Wine behavior.

Now you have patches that you can submit, submit them to wine-patches, 
respond to feedback, and with some persistence you should get your issue 

Good Luck

More information about the wine-devel mailing list