                              Wine Documentation                               
Prev                                                                       Next
-------------------------------------------------------------------------------

Chapter 1. Winelib Introduction

1.1. What is Winelib?

Winelib is a development toolkit which allows you to compile your Windows
applications on Unix.

Most of Winelib's code consists of the Win32 API implementation. Fortunately
this part is 100 percent shared with Wine. The remainder consists of Windows
compatible headers and tools like the resource compiler (and even these are
used when compiling Wine).

Thanks to the above, Winelib supports most C and C++ 32bit source code,
resource and message files, and can generate graphical or console applications
as well as dynamic libraries.

What is not supported is 16bit source code as the types it depends on
(especially segmented pointers) are not supported by Unix compilers. Also
missing are some of the more exotic features of Microsoft's compiler like
native COM support and structured exception handling. So you may need to
perform some modifications in your code when recompiling your application with
Winelib. This guide is here to help you in this task.

What you gain by recompiling your application with Winelib is the ability to
make calls to Unix APIs, directly from your Windows source code. This allows
for a better integration with the Unix environment than is allowed by runnning
an unmodified Windows application running in Wine. Another benefit is that a
Winelib application can relatively easily be recompiled on a non-Intel
architecture and run there without the need for a slow software emulation of
the processor.

-------------------------------------------------------------------------------
Prev                                  Home                                 Next
Winelib User's Guide                   Up                   System requirements
