Difference between revisions of "Frontends:Xiphos/Windows"

From CrossWire Bible Society
Jump to: navigation, search
(Needs)
(Setting up required libraries)
Line 27: Line 27:
 
For all following instructions, when you run configure do it with --prefix=/mingw
 
For all following instructions, when you run configure do it with --prefix=/mingw
  
* install gnome versions of utilities
+
* install gnome versions of utilities (direct links below)
 
       http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/
 
       http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/
 
: create a directory c:\msys\1.0\dev
 
: create a directory c:\msys\1.0\dev
Line 55: Line 55:
 
* download lots of gnome libs and unpack them in dev
 
* download lots of gnome libs and unpack them in dev
 
       for everything, you need the normal and developer package
 
       for everything, you need the normal and developer package
       atk, cairo, fontconfig, freetype, gail, gconf, glib, gnome-common, gnome-doc-utils, gnome-vfs,
+
       atk: http://ftp.gnome.org/pub/gnome/binaries/win32/atk/1.24/atk_1.24.0-1_win32.zip
 +
      atk-dev: http://ftp.gnome.org/pub/gnome/binaries/win32/atk/1.24/atk-dev_1.24.0-1_win32.zip     
 +
      cairo: http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/cairo_1.8.0-1_win32.zip
 +
      cairo-dev: http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/cairo-dev_1.8.0-1_win32.zip
 +
      fontconfig: http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/fontconfig-2.4.2-tml-20071015.zip
 +
      fontconfig-dev: http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/fontconfig-dev-2.4.2-tml-20071015.zip
 +
      freetype: http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/freetype-2.3.6.zip
 +
      freetype-dev: http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/freetype-dev-2.3.6.zip
 +
      gail: http://ftp.gnome.org/pub/gnome/binaries/win32/gail/1.22/gail-1.22.0.zip
 +
      gail-dev: http://ftp.gnome.org/pub/gnome/binaries/win32/gail/1.22/gail-dev-1.22.0.zip
 +
      gconf: http://ftp.gnome.org/pub/gnome/binaries/win32/GConf/2.22/GConf-2.22.0.zip
 +
      gconf-dev: http://ftp.gnome.org/pub/gnome/binaries/win32/GConf/2.22/GConf-dev-2.22.0.zip
 +
      glib: http://ftp.gnome.org/pub/gnome/binaries/win32/glib/2.18/glib_2.18.3-1_win32.zip
 +
      glib-dev: http://ftp.gnome.org/pub/gnome/binaries/win32/glib/2.18/glib-dev_2.18.3-1_win32.zip
 +
      gnome-common: http://ftp.gnome.org/pub/gnome/binaries/win32/gnome-common/2.11/gnome-common-2.11.0.zip
 +
 
 +
 
 +
, fontconfig, freetype, gail, gconf, glib, gnome-common, gnome-doc-utils, gnome-vfs,
 
       goocanvas, gtk+, gtkhtml-3.18, intltool, libart, libbonobo, libbonoboui, libbzip, libffi,  
 
       goocanvas, gtk+, gtkhtml-3.18, intltool, libart, libbonobo, libbonoboui, libbzip, libffi,  
 
       libglade, libgnome, libgnomecanvas, libgnome, libgnomeprint, libgnomeprintui, libgnomeui,
 
       libglade, libgnome, libgnomecanvas, libgnome, libgnomeprint, libgnomeprintui, libgnomeui,
Line 84: Line 101:
 
go to /dev/share/themes/MS-Windows/gtk-2.0
 
go to /dev/share/themes/MS-Windows/gtk-2.0
 
copy gtkrc to /dev/etc/gtk-2.0/gtkrc
 
copy gtkrc to /dev/etc/gtk-2.0/gtkrc
 
  
 
==Helpful links==
 
==Helpful links==

Revision as of 14:20, 6 December 2008

MinGW

MinGW is minimalist GNU for Windows.[1]

One lives in hope....


Setting up MinGW

A tutorial for how to set up a MinGW build environment.

  • Install MinGW base system only
     http://sourceforge.net/project/showfiles.php?group_id=2435&package_id=240780
  • Install MSYS (Be sure to grab the current release installer, not the tech preview.)
     http://sourceforge.net/project/showfiles.php?group_id=2435&package_id=24963
  • Install msysDTK directly over msys (direct link to file)
     http://downloads.sourceforge.net/mingw/msysDTK-1.0.1.exe?modtime=1041430674&big_mirror=1
  • Install m4-1.4.7-MSYS into your msys /bin
     http://downloads.sourceforge.net/mingw/m4-1.4.7-MSYS.tar.bz2?modtime=1162303978&big_mirror=1
  • Install strawberry perl in default location
     http://strawberryperl.com/
  • Set the environment variable INTLTOOL_PERL=/path/to/strawberry/bin/perl by adding the following line to c:\msys\1.0\etc\profile:
     export INTLTOOL_PERL=/c/strawberry/perl/bin/perl

Setting up required libraries

For all following instructions, when you run configure do it with --prefix=/mingw

  • install gnome versions of utilities (direct links below)
     http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/
create a directory c:\msys\1.0\dev
add it to your path (in profile)
unpack everything there
you need at this point:
 pkg-config: http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/pkg-config-0.23-2.zip
 gettext: http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/gettext-0.14.5.zip
 gettext-dev: http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/gettext-dev-0.14.5.zip
 gettext-runtime: http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/gettext-runtime-0.17.zip
 gettext-runtime-dev: http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/gettext-runtime-dev-0.17.zip
  • add this line to your profile
     export PKG_CONFIG_PATH=/dev/lib/pkgconfig
  • upgrade autoconf to 2.63 from source
     http://ftp.gnu.org/gnu/autoconf/
  • upgrade automake to 1.9 from source
     http://ftp.gnu.org/gnu/automake/
  • install libcurl
     http://curl.haxx.se/download.html
     (direct linke) http://www.gknw.net/mirror/curl/win32/curl-7.19.0-devel-mingw32.zip
     find curl-config script from linux and copy it to /mingw/bin
  • 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: http://ftp.gnome.org/pub/gnome/binaries/win32/atk/1.24/atk_1.24.0-1_win32.zip
     atk-dev: http://ftp.gnome.org/pub/gnome/binaries/win32/atk/1.24/atk-dev_1.24.0-1_win32.zip      
     cairo: http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/cairo_1.8.0-1_win32.zip
     cairo-dev: http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/cairo-dev_1.8.0-1_win32.zip
     fontconfig: http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/fontconfig-2.4.2-tml-20071015.zip
     fontconfig-dev: http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/fontconfig-dev-2.4.2-tml-20071015.zip
     freetype: http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/freetype-2.3.6.zip
     freetype-dev: http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/freetype-dev-2.3.6.zip
     gail: http://ftp.gnome.org/pub/gnome/binaries/win32/gail/1.22/gail-1.22.0.zip
     gail-dev: http://ftp.gnome.org/pub/gnome/binaries/win32/gail/1.22/gail-dev-1.22.0.zip
     gconf: http://ftp.gnome.org/pub/gnome/binaries/win32/GConf/2.22/GConf-2.22.0.zip
     gconf-dev: http://ftp.gnome.org/pub/gnome/binaries/win32/GConf/2.22/GConf-dev-2.22.0.zip
     glib: http://ftp.gnome.org/pub/gnome/binaries/win32/glib/2.18/glib_2.18.3-1_win32.zip
     glib-dev: http://ftp.gnome.org/pub/gnome/binaries/win32/glib/2.18/glib-dev_2.18.3-1_win32.zip
     gnome-common: http://ftp.gnome.org/pub/gnome/binaries/win32/gnome-common/2.11/gnome-common-2.11.0.zip


, 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
  • setup xml2po
     install python 2.5
     ensure that python is on your path (windows environment variable)
     edit /dev/bin/xml2po shebang line to just say #! python
     install python libxml2 from here http://users.skynet.be/sbi/libxml-python/
  • install iconv
     You will need this version of iconv http://gnuwin32.sourceforge.net/packages/libiconv.htm.
  • install gnome-icon-theme
     You may need to rename share/icons/gnome/ to share/icons/hicolor. This theme is required by the studypad
  • alter configure script to allow compilation without scrollkeeper
  • update gnomesword to latest 2.4.x svn
  • 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

  1. http://live.gnome.org/Planner/Windows
  2. http://www.go-evolution.org/Building_Evolution_on_Windows
  3. http://www.mingw.org/wiki/msys

Articles found so far

  1. http://live.gnome.org/Cross%20compiling%20GTK%2B%20for%20Win32
  2. http://www.gnome-db.org/GnomeDbMinGW (has good tutorial to set up MINGW compiling on windows
  3. http://www.daniweb.com/forums/thread86245.html (Order of commandline options for GCC is important)

Building of other GTK/Gnome projects

  1. https://develop.participatoryculture.org/trac/democracy/wiki/BuildingMiroWithMinGW

Other stuff

  1. http://linux.softpedia.com/get/Text-Editing-Processing/IDEs/MinGW-Developer-Studio-14939.shtml Allows compiling and cross compiling of GTK applications