mingw-cross-env-list
[Top][All Lists]
Advanced

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

[Mingw-cross-env-list] Glib/GCC/OSX


From: Tony Theodore
Subject: [Mingw-cross-env-list] Glib/GCC/OSX
Date: Sat, 2 Oct 2010 22:04:59 +1000

Okay, so after a few dead ends, it seems there are two issues:

The latest glib fails to build with gcc versions less than 4.1. This
has something to do with using gcc built-in atomic intrinsics and
configure not disabling them. This doesn't seem to be OSX specific,
but I don't want to install previous versions of gcc on other systems
just to check. We may have to change the minimum required version of
gcc in the docs.

The simple solution is to use a later version of gcc. The problem is
that there is a workaround on OSX to use an older version of gcc to
get past some 32/64-bit issues.

The problem is that the native build of glib doesn't actually use the
just-built libiconv, it picks it up from /usr/lib. This doesn't matter
for the i386 build, as both iconv_open and libiconv_open are present:

$ nm -arch i386 /usr/lib/libiconv.dylib | grep iconv_open
00015049 T _iconv_open
00015860 T _libiconv_open

$ nm -arch x86_64 /usr/lib/libiconv.dylib | grep iconv_open
0000000000014d42 T _iconv_open

This can be worked around by configuring with --with-libiconv=native,
but that doesn't work on Ubuntu. Since we're calling autoconf anyway,
this can be added to configure.ac (patch 2). Then there is an error in
gconvert.c that's just a complaint about the source of libiconv (patch
3). This now works on FreeBSD, OSX, and Ubuntu, so I've checked it in,
keeping them as separate files for the time being:

http://hg.savannah.gnu.org/hgweb/mingw-cross-env/rev/f6b40f220e1d

Also, glib 2.26 has been released [1], but it hasn't been tagged yet
[2]. Should we change the update macro to use the release (even)
versions?

Cheers,

Tony

[1] http://mail.gnome.org/archives/gtk-devel-list/2010-September/msg00284.html
[2] http://git.gnome.org/browse/glib/refs/tags



reply via email to

[Prev in Thread] Current Thread [Next in Thread]