Packaging an application on Windows



Thanks to the helpful advice various people on this list gave me, I managed to package a gtkmm application on Windows. I started with MinGW and Msys already installed, then used the easy-to-use binary installers of gtk and gtkmm.

In addition to mingw10.dll and a couple of Boost dll's, I included the files listed below in the same directory as the main application (a .pyd file for a 3D visualization module for Python, written in C++; see vpython.org). I stripped the files to save a lot of space. The installer, made with InnoSetup, is 8.5 MB (the non-gtkmm version was 2.5 MB).

I determined which dll's I needed by repeatedly running the application and one-by-one getting error messages saying I was missing a dll. And then to make sure I'd gotten everything, I changed the name of c:\MinGW to c:\xxxMinGW and ran again, to prevent accessing dll's from the developer directories.

The only Windows-specific code remaining is a substitute for gettimeofday. I see in surfing the web that lots of people keep reinventing this routine for use on Windows. Seems like it would make sense for it to be part of gtk for Windows.

A colleague is attempting to use the new gtkmm-to-Quartz machinery on the Mac to make a native Mac version of VPython with a simple installation procedure, because many of our end users find it a difficult hassle installing X11 and Xcode and fink and finally VPython. Hopefully we'll have essentially one set of C++ code that works on all platforms.

I should comment that I haven't yet released the new version ("4beta20"); I'm still doing testing.

Thanks much to those of you who have contributed to creating the gtkmm environment!

Bruce Sherwood

------------------------------

MinGW/etc/fonts
MinGW/etc/gtk-2.0
MinGW/etc/pango
MinGW/lib/gtk-2.0
MinGW/lib/pango

iconv.dll
intl.dll
libatk-1.0-0.dll
libatkmm-1.6-1.dll
libcairo-2.dll
libcairomm-1.0-1.dll
libfontconfig-1.dll
libfreetype-6.dll
libgdk-win32-2.0-0.dll
libgdk_pixbuf-2.0-0.dll
libgdkglext-win32-1.0-0.dll
libgdkmm-2.4-1.dll
libglade-2.0-0.dll
libglademm-2.4-1.dll
libglib-2.0-0.dll
libglibmm-2.4-1.dll
libgmodule-2.0-0.dll
libgobject-2.0-0.dll
libgthread-2.0-0.dll
libgtk-win32-2.0-0.dll
libgtkglext-win32-1.0-0.dll
libgtkmm-2.4-1.dll
libpango-1.0-0.dll
libpangocairo-1.0-0.dll
libpangoft2-1.0-0.dll
libpangomm-1.4-1.dll
libpangowin32-1.0-0.dll
libpng12.dll
libsigc-2.0-0.dll
libxml2.dll
zlib1.dll



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]