What would be a good way to make a private Win32 GTK+ release independent of others? --Hans David J. Andruczyk schreef: > Beware that doing so (incorporating a "private" GTK+ > release intro your installer) will mostly likely BREAK > or screw up ANY OTHER GTK+ apps on the box.. > > I have this problem with my software (MegaTunix). I > recommend my users to use the gladewin32.sf.net GTK+ > runtime as it has GTK+, glade, and gtkglext, all in a > simple 5 click installer. > > Users report that if they had gaim installed, this > breaks things horribly. They can't run my SW with > gaim's GTK+ as it is missing gtkglext, and cairo > dll.s, and instlaling the sladewin32.sf.net runtime > doesn't resolve it as gaim's "privatized" gtk+ screws > up the rest of the system except for itself. > > So adding in your own privatized version is likely to > affect other applications. > > The best "all in one" runtime I have found for me is > the gladewin32.sf.net as it keeps it's DLL's OUT of > the window's dir (everything goes into C:\GTK) > > It also includes bits that other GTK+ libs DO NOT > have, like gtkglext (openGL extension), > glade/libglade, libxml2, cairo, etc. > > > --- Tor Lillqvist <tml@xxxxxx> wrote: > > >> Bleriot Trece writes: >> > is it possible to copy a set of GTK files (DLLs >> or whatever) and, >> > in this way, make GTK available WITHOUT using an >> official GTK >> > installer? >> >> Of course. And anyway, the degree of officialness of >> the various GTK >> installers out there isn't that clear. >> >> > what files should be copied, what environment >> variables >> > modified... and so on? >> >> I could try to list them, but you learn best by >> doing, so I will tell you >> how to do that: >> >> Start by fetching from >> http://ftp.gnome.org/pub/gnome/binaries/win32/ >> the latest run-time zipfiles (not the *-dev-* ones) >> for gtk+, pango, >> atk, glib. From the depencensies subfolder get the >> latest cairo, >> gettext, and libiconv run-time zipfiles. If you know >> that your app >> will need the libpng pixbuf loader at run-time, also >> get libpng and >> zlib. >> >> Unzip all the above in some new empty folder. Add >> the "bin" folder of >> that to your PATH environment variable. >> >> Then start removing stuff you think your app and >> your customers won't >> need. For instance, if you don't have any need for >> localised strings from >> gtk+ etc, you can remove everything from lib/locale >> . If you want localised >> strings, but not for some "exotic" languages, remove >> the corresponding >> subfolders from lib/locale. >> >> If you don't need pixbuf loaders for "exotic" image >> formats, remove >> those dlls from lib/gtk-2.0/2.10.0/loaders . >> >> If you don't need gtk+ input modules, drop >> lib/gtk-2.0/2.10.0/immodules >> . Also, then edit etc/gtk-2.0/gtk.immodules. >> >> If you want the MS-Windows theme to be the default, >> create a file >> etc/gtk-2.0/gtkrc with the line gtk-theme-name = >> "MS-Windows" . Otherwise, >> if you don't want the end-users to be able to change >> theme engine, drop >> lib/gtk-2.0/2.10.0/engines and >> share/themes/MS-Windows . >> >> If you don't need the Freetype2 Pango backend (and >> you presumably >> won't), remove bin/linpangoft2-1.0-0.dll. >> >> Hmm, that should be about it. If I forgot something >> obvious that can >> also be dropped, please follow-up... >> >> Then you add what's left to your application's >> installer. >> >> Don't change the folder substructure. Keep the DLLs >> in the "bin" >> subfolder for instance. >> >> It's easiest to put your application's exe file in >> the same "bin" folder >> and have your Start Menu etc shortcuts point to >> that. Otherwise you will >> have to make sure that the "bin" folder is included >> in PATH when the >> end-user runs your app, either by having your >> installer modifying the >> environment variable, using the App Paths Registry >> method, using a tiny >> wrapper executable that modifies PATH, or something >> else. >> >> The recommended way (at least if I am doing the >> recommentation) is indeed >> to install a copy of GTK+ with each application (or >> set of applications >> originating from the same maintainer / packager) >> that uses it. This is >> unlike Linux, I know. But attempts to use a shared >> GTK+ installation on >> Windows between applications developed and >> distributed by unrelated parties >> have not really been successful. >> >> --tml >> _______________________________________________ >> gtk-list mailing list >> gtk-list@xxxxxxxxx >> http://mail.gnome.org/mailman/listinfo/gtk-list >> >> > > > -- David J. Andruczyk > > __________________________________________________ > Do You Yahoo!? > Tired of spam? Yahoo! Mail has the best spam protection around > http://mail.yahoo.com > _______________________________________________ > gtk-list mailing list > gtk-list@xxxxxxxxx > http://mail.gnome.org/mailman/listinfo/gtk-list > > > _______________________________________________ gtk-list mailing list gtk-list@xxxxxxxxx http://mail.gnome.org/mailman/listinfo/gtk-list