Hi!
Under msys I build glib as follow
configure --prefix=${PREFIX} --host=${HOST} \
${SHARED_LINK_FLAGS} \
--disable-gtk-doc \
CFLAGS="$HOST_CFLAGS" \
LDFLAGS="$HOST_LDFLAGS" \
CPPFLAGS="$HOST_CPPFLAGS" \
LIBFFI_CFLAGS="-I${PREFIX}/lib/libffi-${LIBFFI_VERSION}/include"
LIBFFI_LIBS="-L${PREFIX}/lib -lffi"
cd glib
make glibconfig.h.win32
make glibconfig.h
mv glibconfig.h glibconfig.h.autogened
cp glibconfig.h.win32 glibconfig.h
cd ..
make ${MAKE_OPTS}
Maybe it help you...
2012/12/21 pavel <[email protected]>
> Hi,
>
> recently I am trying to cross compile some base GNU libraries for both
> 32bit and 64bit Windows host. The build system is Debian 6.0.6. I am
> using Ruben's personal build
> (xxx-w64-mingw32-gcc-4.7.2-release-linux64_rubenvb.tar).
>
> When building glib with the x86_64 target, I get the following error at
> some point of linking:
>
> CC gspawn-win32.lo
> CC gwin32.lo
> cd .. && /bin/bash ./config.status glib/glib.rc
> config.status: creating glib/glib.rc
> x86_64-w64-mingw32-windres glib.rc glib-win32-res.o
> CCLD libglib-2.0.la
> Cannot export g_dir_open: symbol not defined
> Cannot export g_dir_read_name: symbol not defined
> ...
> Cannot export g_unsetenv: symbol not defined
> Cannot export g_win32_get_package_installation_directory: symbol not
> defined
> Cannot export g_win32_get_package_installation_subdirectory: symbol not
> defined
> collect2: error: ld returned 1 exit status
> make[4]: *** [libglib-2.0.la] Error 1
> make[4]: Leaving directory `/home/pavel/Programs/GNUsystem/glib/glib'
> make[3]: *** [all-recursive] Error 1
>
> The list of not defined symbols is longer but it is not important at the
> moment. The interesting point is that all the not defined symbols have
> an alias defined via #define directive. So for example gdir.h contains:
>
> #define g_dir_open g_dir_open_utf8
> GDir* g_dir_open(const gchar *path, guint flags, GError **error);
>
> and the glib.def declares both g_dir_open and g_dir_open_utf8 for
> export. g_dir_open is marked as PRIVATE, but it is probably also not
> important. When I comment out the #define line in gdir.h and comment out
> g_dir_open_utf8 in the def file, then g_dir_open is not reported as
> undefined symbol anymore.
>
> And finally, when configure runs with the same parameters for the i686
> host, then everything compiles without problems.
>
> So, can anybody help me with this so that I don't need to make changes
> to the source code? Is there any compiler switch or something like that?
> Or is there any other mingw64 cross compiler build I could try?
>
> Thanks, Pavel
>
>
>
>
> ------------------------------------------------------------------------------
> LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
> Remotely access PCs and mobile devices and provide instant support
> Improve your efficiency, and focus on delivering more value-add services
> Discover what IT Professionals Know. Rescue delivers
> http://p.sf.net/sfu/logmein_12329d2d
> _______________________________________________
> Mingw-w64-public mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/mingw-w64-public
>
------------------------------------------------------------------------------
LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
Remotely access PCs and mobile devices and provide instant support
Improve your efficiency, and focus on delivering more value-add services
Discover what IT Professionals Know. Rescue delivers
http://p.sf.net/sfu/logmein_12329d2d
_______________________________________________
Mingw-w64-public mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public