cross compiling gtk cairo clock example
- From: "David L" <idht4n hotmail com>
- To: gtk-list gnome org
- Subject: cross compiling gtk cairo clock example
- Date: Sun, 10 Sep 2006 13:24:38 -0700
Hi...
I've written a script that downloads and intalls the current mingw
cross compiler and downloads and builds a simple gtk/cairo example
from http://gnomejournal.org/article/34 and I thought it would be useful
to readers of this list. It seems to work on my fedora core 5 box and
generate a clock.exe file that I can run under wine (I don't have a
Windows system). Before running it, I created a directory /opt/cross-tools
and made it writable. I also installed the gcc32 compiler since
gcc4 seems to choke building older versions of binutils and gcc.
Below is the script for your reading pleasure. If anybody sees
anything stupid that I've done, please respond.
#!/bin/bash
export CC=gcc32
mkdir /tmp/mingwtmp
cd /tmp/mingwtmp
wget http://www.libsdl.org/extras/win32/cross/build-cross.sh
#update script to "current" versions of gcc, mingw-runtime, binutils, and
w32api
#also, force use of gcc32
#(fedora users can get this using "yum install compat-gcc-32.i386")
cat build-cross.sh | sed 's/\/usr\/local\/cross-tools/\/opt\/cross-tools/' |
\
sed 's/3.4.1-20040711-1/3.4.2-20040916-1/' | \
sed 's/mingw-runtime-3.3/mingw-runtime-3.9/' | \
sed 's/# where does it go?/export CC=gcc32/' | \
sed 's/2.15.90-20040222-1/2.15.91-20040904-1/' | \
sed 's/w32api-2.5/w32api-3.6/' > build-cross-new.sh
chmod u+x build-cross-new.sh
./build-cross-new.sh
mkdir /tmp/gtkwin32tmp
cd /tmp/gtkwin32tmp
wget ftp://ftp.gtk.org/pub/gtk/v2.8/win32/atk-1.10.3.zip
wget ftp://ftp.gtk.org/pub/gtk/v2.8/win32/atk-dev-1.10.3.zip
wget ftp://ftp.gtk.org/pub/gtk/v2.8/win32/cairo-1.2.4.zip
wget ftp://ftp.gtk.org/pub/gtk/v2.8/win32/cairo-dev-1.2.4.zip
wget ftp://ftp.gtk.org/pub/gtk/v2.8/win32/glib-2.8.6.zip
wget ftp://ftp.gtk.org/pub/gtk/v2.8/win32/glib-dev-2.8.6.zip
wget ftp://ftp.gtk.org/pub/gtk/v2.8/win32/gtk+-dev-2.8.20.zip
wget ftp://ftp.gtk.org/pub/gtk/v2.8/win32/pango-1.10.3.zip
wget ftp://ftp.gtk.org/pub/gtk/v2.8/win32/pango-dev-1.10.3.zip
wget ftp://ftp.gtk.org/pub/gtk/v2.8/win32/gtk+-2.8.20.zip
wget
ftp://ftp.gtk.org/pub/gtk/v2.8/win32/dependencies/fontconfig-2.2.2-20040412.zip
wget
ftp://ftp.gtk.org/pub/gtk/v2.8/win32/dependencies/fontconfig-dev-2.2.2-20040412.zip
wget ftp://ftp.gtk.org/pub/gtk/v2.8/win32/dependencies/freetype-2.1.10.zip
wget ftp://ftp.gtk.org/pub/gtk/v2.8/win32/dependencies/gettext-0.14.5.tar.gz
wget ftp://ftp.gtk.org/pub/gtk/v2.8/win32/dependencies/gettext-0.14.5.zip
wget
ftp://ftp.gtk.org/pub/gtk/v2.8/win32/dependencies/gettext-dev-0.14.5.zip
wget
ftp://ftp.gtk.org/pub/gtk/v2.8/win32/dependencies/libiconv-1.9.1.bin.woe32.zip
wget ftp://ftp.gtk.org/pub/gtk/v2.8/win32/dependencies/libiconv-1.9.1.tar.gz
wget ftp://ftp.gtk.org/pub/gtk/v2.8/win32/dependencies/libpng-1.2.8-bin.zip
wget ftp://ftp.gtk.org/pub/gtk/v2.8/win32/dependencies/pkg-config-0.20.zip
wget ftp://ftp.gtk.org/pub/gtk/v2.8/win32/dependencies/zlib123-dll.zip
wget http://www.gnome.org/~davyd/gnome-journal-cairo-article/clock-ex3.c
wget http://www.gnome.org/~davyd/gnome-journal-cairo-article/clock.h
wget http://www.gnome.org/~davyd/gnome-journal-cairo-article/main.c
cd /opt/cross-tools/i386-mingw32msvc/
for i in /tmp/gtkwin32tmp/*.zip
do
unzip $i
done
#
for i in lib/pkgconfig/*.pc
do
cat $i |sed 's/prefix=c:.\+/prefix=\/opt\/cross-tools\/i386-mingw32msvc/' \
> $i.tmp
/bin/mv $i.tmp $i
done
export PKG_CONFIG_PATH=/opt/cross-tools/i386-mingw32msvc/lib/pkgconfig
cd /tmp/gtkwin32tmp
/opt/cross-tools/bin/i386-mingw32msvc-gcc -o clock.exe \
`pkg-config --cflags gtk+-2.0` clock-ex3.c main.c clock.h \
`pkg-config --libs gtk+-2.0`
_________________________________________________________________
Windows Live Spaces is here! It?s easy to create your own personal Web site.
http://spaces.live.com/signup.aspx
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]