From CrossWire Bible Society
Jump to: navigation, search

A whiteboard for me to work out a more complete & explicit set of instructions for building GnomeSword in MinGW

Set up MinGW/MSYS

  • Download MinGW from the following URL, run the installer, select Candidate, then select the base system plus g++
  • Download MSYS from the following URL (using the current release installer, not the tech preview) and do a default install (type y, y, c:/mingw during the post-install setup)
  • Download msysDTK from the following URL and do a default install
  • Download m4-1.4.7-MSYS from the following URL and extract m4.exe to c:/msys/bin
  • Open an MSYS terminal window (using the icon on your desktop, for example)
  • Download, build, and install recent versions of autoconf, automake, and libtool:
curl -O
tar zxfv autoconf-2.63.tar.gz
./autoconf-2.63/configure --prefix=/mingw && make && make install
curl -O
tar zxfv automake-1.9.6.tar.gz
./automake-1.9.6/configure --prefix=/mingw && make && make install
curl -O
tar zxfv libtool-2.2.6a.tar.gz
./libtool-2.2.6a/configure --prefix=/mingw && make && make install
  • Download SVN:
  • Unzip svn-win32-1.5.4 to C:\msys\1.0\local

Setting up required libraries

  • Install zlib & libcurl:
curl -O
tar zxfv zlib-1.2.3.tar.gz
cd zlib-1.2.3
./configure --prefix=/mingw && make && make install
cd ..
curl -O
tar zxfv curl-7.19.2.tar.gz
./curl-7.19.2/configure --prefix=/mingw && make && make install
  • install gnome versions of utilities
create a directory c:\msys\1.0\dev
add it to your path (in profile)
unpack everything there
you need at this point:
  • add this line to your profile
     export PKG_CONFIG_PATH=/dev/lib/pkgconfig
  • compile sword-1.5.11 from source
     with libcurl is easier than ftplib
     you will have to manually alter makefile to link against regex
  • download gnomesword 2.4.1
  • download lots of gnome libs and unpack them in dev
     for everything, you need the normal and developer package
     atk, cairo, fontconfig, freetype, gail, gconf, glib, gnome-common, gnome-doc-utils, gnome-vfs,
     goocanvas, gtk+, gtkhtml-3.18, intltool, libart, libbonobo, libbonoboui, libbzip, libffi, 
     libglade, libgnome, libgnomecanvas, libgnome, libgnomeprint, libgnomeprintui, libgnomeui,
     libiconv, libIDL, libpng, libxml2, ORBIT, popt, pthreads, zlib, pango
     For these 2, you only need the binaries:
     expat, gnurx
  • alter configure script to allow compilation without scrollkeeper
  • apply linux/windows diff
     hopefully most will be unnecessary soon
     mailed to gnomesword-developers
  • run configure with --enable-gtkhtml --disable-scrollkeeper --prefix=/mingw
  • make
     you will have to alter the makefile in libs to link against libcurl.dll (-lcurl doesn't work)
  • make install
  • run gnomesword
  • getting gnomesword free from mingw is another topic.
  • Windows XP look

To get the windows XP look, go to /dev/share/themes/MS-Windows/gtk-2.0 copy gtkrc to /dev/etc/gtk-2.0/gtkrc

Helpful links


Articles found so far

  2. (has good tutorial to set up MINGW compiling on windows
  3. (Order of commandline options for GCC is important)

Building of other GTK/Gnome projects


Other stuff

  1. Allows compiling and cross compiling of GTK applications