building an MSVC app with libpurple

David Byron dbyron at dbyron.com
Thu May 24 19:56:11 EDT 2007


On Thursday May 24, 2007 @ 4:19p, Daniel Atallah wrote:

> > I followed the normal mingw instructions to build pidgin, 
> > configuring like this:
> >
> > ../configure --enable-static --disable-shared --disable-gtkui
> > --enable-consoleui --disable-perl --disable-tcl --disable-tk
--enable-debug
> > --enable-fatal-asserts
> >
--with-static-prpls=gg,irc,jabber,msn,novell,oscar,qq,simple,yahoo,zephyr
> > --disable-mcheck
> 
> The win32 build isn't built with configure, we use static makefiles;
> see the instructions at
> http://developer.pidgin.im/wiki/BuildingWinPidgin

You're right.  I got my notes jacked up.  I did try the configure stuff
originally, but for this exercise I'm using:

$ cd $PIDGIN_DEV_ROOT/pidgin
$ make -f Makefile.mingw install

> You've gotten quite far.  The problem here is that you only have the
> glib development package; you also need the runtime, which I guess you
> found on Tor's site.  These are fine (and are actually what I use in
> our GTK+ runtime installer.  You don't have to rebuild them, Tor's
> binary should be fine.

Yes, I got more glib binaries from
http://ftp.gnome.org/pub/gnome/binaries/win32/glib/2.12/glib-2.12.11.zip).
Good news that you expect it to work.

> > After this error message, I get another one libxml2 that
> > I solve by adding win32-dev\libxml2\bin to my path.
> > Unfortunately, there's still another missing dll:
> > zlib1.dll.  Again the gtk tarball has zlib.lib but no
> > zlib1.dll.  Googling for it finds it for me, but yet
> > another missing dll.  This time it's glib-2.0.dll....Has
> > anyone gone down this road?  It doesn't feel like a good
> > one.  If I really need to build everything from source
> > with the native tools I will but I'm hoping someone
> > knows a shorter way.
> 
> You just need all the various dependencies that libpurple and glib
> have .  I suspect you have some incompatible versions of these dlls -
> it generally isn't the best idea just to grab a version from some
> random place on the web.
> 
> libpurple needs libxml2, glib (and gobject, gthread, gmodule) 
> and libintl.
> 
> For libxml2, you can use libxml2.dll from "win32-dev\libxml2\bin".
>
> glib, gobject, gthread and gmodule are all in the bin directory of the
> glib runtime you got from Tor's site
> 
> glib needs libiconv and gettext - compatible versions of these are
> both available on Tor's site:
> http://www.gimp.org/~tml/gimp/win32/downloads.html
> 
> libxml2 also needs zlib (also available from Tor's site).

Thanks for a better place to get zlib.  Much better than a random google
search.

Unfortunately I'm still missing glib-2.0.dll.  I don't see that in the
archive from Tor's site so I'm not sure where to get it (or what piece of
code is looking for it for that matter).  Neither nm nor dumpbin seem to be
giving me much info.  If you can shed some light on what code is looking for
glib-2.0.dll it would be a big help.

> **An alternative is to grab the unpackaged version of our GTK+
> installer from 
> http://downloads.sourceforge.net/pidgin/gtk-2.10.11-rev-b-installer.tar.gz
> and then grab all the needed dlls from that (it has been assembled
> from the above sources).

I looked there but still no glib-2.0.dll.  libglib-2.0-0.dll, but no
glib-2.0.dll.

> Binaries are available for the dependencies, you don't need
> to compile any of them.  Once you've satisfied the
> dependencies, you should be able to use libpurple.
> 
> You're navigating relatively uncharted territory here, but
> it sounds like you've already gotten most of the hard parts
> working.

Thanks for your help.  Hopefully with a couple more nudges I can get this
working.

-DB





More information about the Devel mailing list