I haven't gotten any farther in documenting the Windows build procedures. I took a quick look at building it again and decided it was too complicated for the amount of time that I had. But I'm in the process of trying to build a redistributable binary package for my application. As part of that I installed the Windows gems. I noticed a problem. If I do "gem install gtk2", it installs several gems (gtk-2, glib2, atk, etc, etc). But the vendor/local/bin directories contain the same dlls over and over again. Even if I delete all the source code, libs, includes, and executables, the result is over 200 MB in size. I can't ask my users to do a 250 MB download (including Ruby) for my tiny app. Is there any way to get rid of the duplication of DLLs? This is an area where I have no knowledge. I will volunteer to work on improving it, but I need some help. MikeC
on 2011-01-20 08:27
on 2011-01-21 14:58
Hi, In <AANLkTik7wOHDo8feSKJPGdCQNiw30L_hV6SQF3YwZcxk@mail.gmail.com> "[ruby-gnome2-devel-en] More Windows Build" on Thu, 20 Jan 2011 16:26:26 +0900, Mike Charlton <mikekchar@gmail.com> wrote: > If I do "gem install gtk2", it installs several gems (gtk-2, > glib2, atk, etc, etc). But the vendor/local/bin directories > contain the same dlls over and over again. Even if I > delete all the source code, libs, includes, and executables, > the result is over 200 MB in size. I can't ask my users > to do a 250 MB download (including Ruby) for my tiny > app. I think so too. We need to reduce duplicated DLLs. > Is there any way to get rid of the duplication of DLLs? > This is an area where I have no knowledge. I will > volunteer to work on improving it, but I need some > help. You can find which binaries are required by a gem in Rakefile. For examlpe, you can find the following code in gtk2/Rakefile: packages = ["glib", "atk", "gdk-pixbuf", "pango", "gtk+"] dependencies = ["gettext-runtime", "zlib", "freetype", "expat", "fontconfig", "cairo", "libpng"] It means "Ruby/GTK2 uses glib, atk, gdk-pixbuf, pango, gtk+ and so on". They are downloaded from http://ftp.acc.umu.se/pub/gnome/binaries/win32/ (See glib2/lib/gnome-win32-binary-downloader.rb for details.) All gems include all depend Windows binaries but some binaries aren't needed. For example, Ruby/ATK gem depends on Ruby/GLib2 but both of them include GLib Windows binary. We will be able to remove GLib Windows binary from Ruby/ATK. But I didn't it yet because I can't try and error on Windows. I only have Debian GNU/Linux... We need help who can work on Windows. Patches for it are welcome! Thanks, -- kou
on 2011-01-21 17:11
Thank you for the explanation. I will try to
do it next week if I have time!
MikeC
Please log in before posting. Registration is free and takes only a minute.
Existing account
(Switch to SSL-encrypted connection)
NEW: Do you have a Google/GoogleMail or Yahoo account? No registration required!
Log in with Google account | Log in with Yahoo account
Log in with Google account | Log in with Yahoo account
No account? Register here.