Google Summer of Code

John Bailey rekkanoryo at rekkanoryo.org
Sun Mar 8 10:00:37 EDT 2009


Gregor Dick wrote:
> Thanks for the quick response. My understanding was that compiling in
> the way you describe would result in binaries that weren't
> ABI-compatible with Microsoft's libraries due to the differing binary
> layouts of C++ objects between the compilers. In any case, I'm not
> sufficiently well-acquainted with the MFC to propose to use it for this
> project, but this might be of interest to other potential applicants.

Actually it's not a matter of ABI incompatibility--it's actually a matter of
which C library which component is linked against.  A MinGW or Viscual C++
6-compiled application uses msvcrt.dll, while Visual Studio .NET-compiled
applications use msvcrt7.dll or msvcrt8.dll depending on version.  The problem
is that if libpurple and the UI use different C libraries, there will be bugs
that can't be fixed because of the library mismatch.

> Having had a quick look at the Vulture repository I see that there are
> MSVC projects for libpurple there already, and so I'll probably propose
> to work with those. A MinGW build environment could always be crafted
> later so as not to discommode people who, for example, want to
> cross-compile, but aiming to support two compilers during SoC sounds
> like an unnecessary headache.

The Vulture repository does indeed contain libpurple Visual Studio .NET projects
for libpurple; however it does also require that you build glib with the same
Visual Studio (all win32 binaries available for glib seem to be built with
MinGW).  As the person who wrote most of the Win32 UI project description on the
SoC page, it doesn't matter much to me what the build environment is.

> The mini dialogues (I take it these are "Join a Chat" and so on) could
> probably be made to feel more natural on Windows simply by expanding
> them a bit and maybe adding some group-box static controls, without
> interfering too much with the function of each dialogue as in Pidgin.

Actually, by mini dialog, I meant the actual mini dialogs that appear in the
buddy list window when you sign in elsewhere on ICQ, Yahoo, etc. or when there's
a connection error or an authorize buddy request.

John

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 197 bytes
Desc: OpenPGP digital signature
URL: <http://pidgin.im/pipermail/devel/attachments/20090308/abe0f652/attachment.sig>


More information about the Devel mailing list