After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 630870 - erroneous G_HAVE_INLINE define in glibconfig.h
erroneous G_HAVE_INLINE define in glibconfig.h
Status: RESOLVED NOTGNOME
Product: glib
Classification: Platform
Component: win32
2.26.x
Other Windows
: Normal blocker
: ---
Assigned To: gtk-win32 maintainers
gtk-win32 maintainers
Depends on:
Blocks:
 
 
Reported: 2010-09-29 01:46 UTC by viktor
Modified: 2010-11-30 11:19 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
patch required for building against 2.26 on windows (436 bytes, patch)
2010-09-29 01:46 UTC, viktor
none Details | Review

Description viktor 2010-09-29 01:46:28 UTC
Created attachment 171318 [details] [review]
patch required for building against 2.26 on windows

i've used glib 2.24 in the past, now with 2.26 i have to patch lib/glib-2.0/glibconfig.h with the attached patch, otherwise i get a horde of syntax errors.

VC++ 10.0 w/ WDK 7.1.0
Comment 1 Tor Lillqvist 2010-09-29 06:36:04 UTC
Packaging error, thanks for the report. As such not a problem in the GLib source code, but in the script that was used to build one particular distribution of GLib for Windows. (But luckily the packager, i.e. I, happen to get glib bugzilla mail, too.)
Comment 2 viktor 2010-09-29 10:18:11 UTC
thanks Tor. unrelated to the report, but any chance for a gdk-pixbuf windows release?
Comment 3 Tor Lillqvist 2010-09-29 10:29:21 UTC
Ah, thanks for reminding me. Of course. gdk-pixbuf 2.22.0 is now being synced there.
Comment 4 viktor 2010-09-29 10:57:34 UTC
thanks. where will i have to look? /dependencies/gdk-pixbuf*.zip ?
Comment 5 Tor Lillqvist 2010-09-29 11:05:43 UTC
Nah, gdk-pixbuf is part of the same GTK+ stack, so just one level up from "gtk+"
Comment 6 viktor 2010-09-29 11:13:14 UTC
thank you :)
Comment 7 viktor 2010-09-29 12:01:56 UTC
Tor, i'm not sure where i should report this, but it may be just another packaging error.

now i'm compiling against glib 2.26 and gtk+ 2.22. i copied intl.dll (from gettext-runtime_0.18.1.1-2_win32.zip) to the application folder as usually, but it complained that libintl.dll is not found. i thought that is has finally been renamed like for win64 (although for win64 it's libintl-8.dll). so i renamed intl.dll to libintl.dll. then it told me it can't find intl.dll.

if i copy the *exact same* intl.dll as both intl.dll and libintl.dll, it works fine.

and btw, there's also an incoherency for freetpye, that is, it's freetype6.dll for win32 and libfreetype-6.dll for win64.
Comment 8 Tor Lillqvist 2010-09-29 12:24:36 UTC
Hmm, odd. Can you find out exactly what it is that depends on a libintl.dll? It might be some 3rd-party gdk-pixbuf loader or theme engine you are using, for instance. I don't think I have ever seen a libintl DLL that would be called libintl.dll. What I've seen is either the traditional name intl.dll, or the one you get if you build it using libtoool, libintl-8.dll.

Also for freetype the name of the DLL as as it is for backward compatibility... the previously used gnuwin32 build of it used to be called so freetype6.dll, and as far as I know the current version is still API and ABI compatible, so the name can (and should, IMHO) be the same. But yeah, perhaps mostly a matter of taste...
Comment 9 viktor 2010-09-29 12:52:58 UTC
there's no 3rd party gtk stuff AFAIK. here's my previous toolchain for win32 and win64 respectively:

http://code.google.com/p/xchat-wdk/source/browse/build/deps-x86.txt?r=98c8976aa381d5e79411cd9e8bf0221aa60f7db6

http://code.google.com/p/xchat-wdk/source/browse/build/deps-x64.txt?r=08586f35404ccc7451a5e2feda250f7753a4532e

i've upgraded gettext-runtime, gettext-runtime-dev, gettext-tools, glib, glib-dev, gtk+ and gtk+-dev (to their latest version) so far, and added gdk-pixbuf. but only for x86 as there are no x64 packages yet.

i'm linking against intl.lib since xchat-wdk provides translations. it links fine, i copy intl.dll, and then it wants libintl.dll.

if that matters, for gettext 0.17 it can't find the entry point for libintl_setlocale in *intl.dll* (even if i copy intl.dll to libintl.dll), that's why i upgraded to 0.18.

eh, even stranger: if i compile and link against 0.17, then copy the 0.18 intl.dll to the app folder, then it works fine without the libintl.dll copy. it must be some dll name exporting problem i guess. now i'll try to track down which file causes this...
Comment 10 Tor Lillqvist 2010-09-29 13:10:52 UTC
Ah, ok. The intl.lib import library indeed seems to refer to a "libintl.dll". I create it from the libintl.def using just:

lib.exe -machine:x86 -def:libintl.def -out:intl.lib

I clearly have forgotten to add a -name: switch to indicate the DLL name, so lib apparently then uses as default the basename of the .def file with .dll appended. I probably won't bother rebuilding gettext just because of this, though, hmm. Maybe I will just pull a fast one and replace the intl.lib in the existing package files...
Comment 11 viktor 2010-09-29 13:13:36 UTC
heh, i was just about to post my findings :) yeah, that overwriting thing should be good. many thanks.

btw, Tor, i'd like to point it out that gettext-tools 0.18 is effectively empty for both win32 and win64, so i need to use the win32 0.17 zip for msgfmt ATM.
Comment 12 Tor Lillqvist 2010-09-29 13:21:41 UTC
The gettext-tools-dev_0.18.1.1-2_win*.zip files aren't empty, the non-dev gettext-tools ones are... That's on purpose, because "tools" by definition are for developers, and I just need to have both foo and foo-dev packages because some of my scripts assume that... Yeah, it's a bit silly.
Comment 13 viktor 2010-09-29 13:24:29 UTC
well, i'm talking about 

http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/gettext-tools-0.17.zip

vs.

http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/gettext-tools_0.18.1.1-2_win32.zip

or

http://ftp.gnome.org/pub/gnome/binaries/win64/dependencies/gettext-tools_0.18.1.1-1_win64.zip

the first one contains all the tools such as msgfmt (4,9M in size) while the latter two only contains a manifest file.
Comment 14 viktor 2010-09-29 13:26:49 UTC
...and they're supposed to be the same package (at least they have the same name) just in different versions.
Comment 15 Tor Lillqvist 2010-09-29 13:31:14 UTC
Yeah, well, how I package stuff is just a policy I make up and change now and then, so occasionally consistency is broken, yes.
Comment 16 viktor 2010-09-29 13:32:00 UTC
oh sorry, i see some files have been moved from -tools to -runtime-dev, such as envsubst.exe, gettext.exe and ngettext.exe.

but there are a lot of msg*.exe files missing in the 0.18 series, are they now in a separate package?
Comment 17 viktor 2010-11-30 11:19:51 UTC
i know this is not the proper place to ask (there isn't any), but are the windows builds of glib 2.26.1 and gtk 2.22.1 expected to be available sometime?