RE: Problems trying to build gtk in Windows
> > /bin/sh: ./gtk-update-icon-cache: Bad file number This one came down to Vista's User Access Control. gtk-update-icon-cache is doing something that worries Vista (if I try to run it directly from a Windows command prompt, Vista pops up a "An unidentified program wants to access your computer" cancel/allow prompt). So for make to be able to run it, requires running make in an msys shell window that was opened using "Run as administrator". Ian ___ gtk-list mailing list gtk-list@gnome.org http://mail.gnome.org/mailman/listinfo/gtk-list
Re: Problems trying to build gtk in Windows
> grep: invalid option -- o > It would appear that -o (--only-matching) is a new option in grep 2.5, but > is not supported by grep 2.4.2 which is what comes with msys. So, is there a > grep 2.5 available for msys? If not what do you use when you build gtk for > Windows? Good catch! I wouldn't have remembered this issue at all. I have my gnuwin32 bin folder before the MSYS /bin in PATH, and in there is the gnuwin32 grep which is version 2.5.1. So I suggest you do the same. Go to gnuwin32.sourceforge.net and get their grep package. Note that not all of the stuff gnuwin32 provides is useful or "correctly ported", but their grep package should be OK. (Personally I keep gnuwin32 stuff under /opt/gnuwin32, but it can of course be anything. Obviously, avoid spaces though, and it's best IMHO to keep it in a folder of its own and not mix it into the MSYS or MinGW tree.) --tml ___ gtk-list mailing list gtk-list@gnome.org http://mail.gnome.org/mailman/listinfo/gtk-list
RE: Problems trying to build gtk in Windows
> -Original Message- > From: Tor Lillqvist > Sent: Tuesday, November 11, 2008 1:04 AM > > > make ran for a while then stopped with > > Windows reporting "This application has failed to start because > > libglib-2.0-0.dll was not found": I don't see why > > it can't find that DLL? > > Me neither. You need to figure out the root cause for this first, I managed to track that down once you'd told me that gtk-update-icon-cache is actually a shell script. That script was itself trying to add GTK to the path before running .libs/gtk-update-icon-cache.exe, but it was using DOS file syntax and adding ":c:/GTK/GTK-2.14.4/lib:c:/GTK/GTK-2.14.4/bin: " to the start of the path. Msys needs "/c/" instead of "c:/", so that was screwing up the path, hence it couldn't find the GTK dlls. > One thing I always do personally when building anything that uses > libtool on Windows is to avoid the shell script wrappers in libtool. > Edit ltmain.sh (the one from a tarball, or the one that is installed > in whatever/share/libtool if you are building something from SVN) and > change the line > need_relink=yes > to > need_relink=no > > Then libtool will try to build exe files directly in each folder, not > into the .libs folder with a wrapper shell script. I don't have libtool installed anywhere, but ltmain.sh comes in the gtk source tarball. I found two instances of need_relink=yes in it and changed them both to no. That got rid of the above problem but not this one: > /bin/sh: ./gtk-update-icon-cache: Bad file number However, not sure if this is relevant to that, but just before hitting it (right before printing "make gtk-update-icon-cache.exe") I noticed the following was reported but did not immediately stop the make: gcc -E ... xgen-gtfsrc.c | \ grep -o '\bg[td]k_[a-zA-Z0-9_]*_get_type\b' | \ sort | uniq | \ sed '{ s/^/*tp++ = /; s/$/();/; }' > xgen-gtf \ && cp xgen-gtf gtktypefuncs.c && rm -f xgen-gtf grep: invalid option -- o Usage: grep [OPTION]... PATTERN [FILE]... Try `grep --help' for more information. :0: fatal error: when writing output to : Invalid argument compilation terminated. It would appear that -o (--only-matching) is a new option in grep 2.5, but is not supported by grep 2.4.2 which is what comes with msys. So, is there a grep 2.5 available for msys? If not what do you use when you build gtk for Windows? Ian ___ gtk-list mailing list gtk-list@gnome.org http://mail.gnome.org/mailman/listinfo/gtk-list
Re: Problems trying to build gtk in Windows
> Next I ran make. It ran for a while then stopped at this line of output with > Windows reporting "This application has failed to start because > libglib-2.0-0.dll was not found": > I have my GTK installation bin directory on the PATH in both the msys and > Windows environments, and libglib-2.0-0.dll is in there, so I don't see why > it can't find that DLL? Me neither. You need to figure out the root cause for this first, instead of doing this: > I had to manually copy all the dlls from GTK/bin into the > gdk-pixbuf source directory which is not a good idea, you are just sweeiping the problem under the rug. > /c/Users/Ian/Downloads/GTK/win32-src/gtk+-2.14.4/gtk/.libs/gtk-update-icon-cache.exe: > Bad file number > ./gtk-update-icon-cache: line 104: One thing I always do personally when building anything that uses libtool on Windows is to avoid the shell script wrappers in libtool. Edit ltmain.sh (the one from a tarball, or the one that is installed in whatever/share/libtool if you are building something from SVN) and change the line need_relink=yes to need_relink=no Then libtool will try to build exe files directly in each folder, not into the .libs folder with a wrapper shell script. This might help. I have been doing this for so long that I can't remember any more what the exact reason was why I started doing it, though... > gcc -DGDK_PIXBUF_DISABLE_DEPRECATED -g -O2 -Wall -mms-bitfields -o > .libs/gtk-update-icon-cache.exe Note here that as libtool is using wrappers, the .exe that is being created is .libs/gtk-update-icon-cache.exe. The gtk-update-icon-cache in the folder itself is a shell script. There shouldn't be any gtk-update-icon-cache.exe in the folder in this case, I think. --tml ___ gtk-list mailing list gtk-list@gnome.org http://mail.gnome.org/mailman/listinfo/gtk-list